Denetim noktası / geri yükleme adı verilen bir tekniğe bakabilirsiniz. Bu, çalışan bir işlemi almanıza ve durumunu bir dosya kümesine kaydetmenize, ardından daha sonra geri yüklemenize olanak tanır.
Kullanmak için criu [ git , wiki ] programını ( yum install criu
veya apt install criu
) yükleyerek başlayın .
Çalışan bir işlemi denetlemek için, dosyalarını ve cd'yi bu dizinde tutmak üzere boş bir dizin oluşturun.
mkdir /var/tmp/checkpoint
cd /var/tmp/checkpoint
Şimdi çalışan işlemi kontrol edin. Bu durumda, işlemimi ilişkili bir tty ile bir kabukta çalıştırdığım için --shell-job kullanıyorum.
criu dump -t 404 --shell-job
404 kontrol noktası istediğim sürecin pid. Bunu yaptığımda çalışan işlemimin öldürüldüğünü ve / var / tmp / checkpoint dizinimin geri yüklemek için gereken bir dizi dosyayla doldurulduğunu görüyorum.
Süreci geri yüklemek için, denetim noktası dosyaları ile dizinde olduğumdan emin olun ve geri yükleme yapın.
cd /var/tmp/checkpoint
criu restore --shell-job
İşlem, çalıştığı terminalde kaldığı yerden devam edecektir. Bu çalışan işlemi öldürür ve criu restore --shell-job
tekrar çalıştırırsam , süreç kontrol noktasına geri döner ve yeniden başlar.
Bu yardımcı olur umarım.