Sie könnten eine Technik untersuchen, die Checkpoint / Restore genannt wird. Auf diese Weise können Sie einen laufenden Prozess ausführen und seinen Status in einer Reihe von Dateien speichern und ihn zu einem späteren Zeitpunkt wiederherstellen.
Um es zu verwenden, installieren Sie zunächst das Programm criu [ git , wiki ] ( yum install criu
oder apt install criu
).
Um einen laufenden Prozess zu überprüfen, erstellen Sie ein leeres Verzeichnis, in dem sich die Dateien und die CD befinden.
mkdir /var/tmp/checkpoint
cd /var/tmp/checkpoint
Überprüfen Sie nun den laufenden Prozess. In diesem Fall verwende ich den --shell-Job, da mein Prozess in einer Shell mit einem zugehörigen tty ausgeführt wird.
criu dump -t 404 --shell-job
404 ist die PID des Prozesses, den ich überprüfen möchte. Wenn ich dies tue, wird mein laufender Prozess abgebrochen und mein / var / tmp / checkpoint-Verzeichnis wird mit einer Reihe von Dateien gefüllt, die zum Wiederherstellen erforderlich sind.
Um den Prozess wiederherzustellen, stelle ich sicher, dass ich mich im Verzeichnis mit den Prüfpunktdateien befinde und stelle sie wieder her.
cd /var/tmp/checkpoint
criu restore --shell-job
Der Prozess wird dort fortgesetzt, wo er aufgehört hat, in dem Terminal, in dem dies ausgeführt wurde. Wenn ich diesen ausgeführten Prozess beende und criu restore --shell-job
erneut ausführe , kehrt der Prozess zum Prüfpunkt zurück und wird erneut gestartet.
Hoffe das hilft.