Ви можете заглянути в техніку, яку називають контрольно-пропускною. Це дозволить вам взяти запущений процес і зберегти його стан у набір файлів, а потім відновити його в більш пізній час.
Щоб скористатися ним, почніть з установки програми criu [ git , wiki ] ( yum install criu
або apt install criu
).
Щоб перевірити запущений процес, створіть порожній каталог для зберігання його файлів та CD у цьому каталозі.
mkdir /var/tmp/checkpoint
cd /var/tmp/checkpoint
Тепер перевірте запущений процес. У цьому випадку я використовую -shell-завдання, оскільки мій процес працює в оболонці з пов'язаним tty.
criu dump -t 404 --shell-job
404 - це процес, який я хочу перевірити. Коли я це роблю, я бачу, що мій запущений процес вбивається, і каталог / var / tmp / checkpoint заповнюється набором файлів, необхідних для його відновлення.
Щоб відновити процес, я переконуюсь, що я перебуваю в каталозі з файлами контрольної точки і виконую відновлення.
cd /var/tmp/checkpoint
criu restore --shell-job
Процес підбере місце, де він зупинився, у терміналі, де це було запущено. Якщо я вбиваю цей запущений процес і запускаю criu restore --shell-job
ще раз, він повернеться до контрольної точки і запуститься знову.
Сподіваюсь, це допомагає.