[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Kann ich ein Programm einfrieren?



Am Sonntag, 7. Februar 2016, 08:52:38 CET schrieb Marc Haber:
> On Sun, 7 Feb 2016 01:04:09 +0100, Christian Knoke <chrisk@cknoke.de>
> 
> wrote:
> >gibt es ein tool, welches ein laufendes X-Programm einfrieren kann und
> >später wieder auftauen und weiterlaufen lässt? Vorausgesetzt, es hat keine
> >Dateien oder Sockets geöffnet. Oder denke ich da falsch?
> 
> Sigstop, sigcont?

Oder freezer control group für eine Gruppe von Prozessen.

Falls es so gedacht ist, den Zustand des Prozesses wirklich abzuspeichern, um 
ihn dann auch noch einem Neustart wieder so herstellen zu können: Dafür gibt 
es criu. Es ist weitgehend im Userspace implementiert, hat aber heftige 
Anforderungen an den Kernel, die mein selbst kompilierter Kernel derzeit nicht 
erfüllt:

merkaba:~#1> criu check
Warn  (libnetlink.c:65): ERROR -2 reported by netlink
Error (libnetlink.c:37): ERROR -2 reported by netlink (No such file or 
directory)
Error (libnetlink.c:37): ERROR -2 reported by netlink (No such file or 
directory)
Error (libnetlink.c:37): ERROR -2 reported by netlink (No such file or 
directory)
Error (libnetlink.c:37): ERROR -2 reported by netlink (No such file or 
directory)
Error (cr-check.c:131): sys/kernel/ns_last_pid sysctl is inaccessible: No such 
file or directory
Error (cr-check.c:165): System call kcmp is not supported: Function not 
implemented
prctl: PR_GET_TID_ADDRESS is not supportedError (cr-check.c:231): Can'r fetch 
file owner UIDs: Invalid argument
Error (cr-check.c:513): /proc/sys/kernel/sem_next_id is inaccessible: No such 
file or directory
Error (cr-check.c:634): Kernel doesn't support PTRACE_O_SUSPEND_SECCOMP
Error (cr-check.c:683): Dumping seccomp filters not supported: Invalid 
argument
Warn  (cr-check.c:696): Dirty tracking is OFF. Memory snapshot will not work.
/proc/<pid>/timers file is missing.
Error (timerfd.c:55): timerfd: No timerfd support for c/r: Inappropriate ioctl 
for device


Also ich denke, ich müsste da noch einen Haufen Kernel-Funktionen aktivieren, 
damit das geht. Falls jemand raussucht, welche Optionen das sind… naja, gut, 
ich sehe gerade, das haben die Entwickler auch dokumentiert:

http://criu.org/Installation#Configuring_the_kernel


Also wer es mal ausprobieren mag, freue mich über Erfahrungsberichte.

Ciao,
-- 
Martin


Reply to: