Я пытаюсь разными способами делать снимки запущенных контейнеров openvz.
Следуя этому руководству: http://openvz.org/Checkpointing_and_live_migration, Я всегда сталкиваюсь с проблемой отсутствия файлов pid при восстановлении снимка. Я выполняю следующие шаги:
vzctl chkpnt 111 --suspend
vzctl chkpnt 111 --dump --dumpfile /vz/dump/testdump.111
vzctl chkpnt 111 --resume
Затем я останавливаю VE и пытаюсь восстановить его из файла дампа:
vzctl stop 111
vzctl restore 111 --undump --dumpfile /vz/dump/testdump.111
На этом этапе я всегда получаю сообщения об отсутствии файлов pid:
vzctl restore 111 --undump --dumpfile /vz/dump/Dump.111
Restoring container ...
Container is mounted
undump...
Adding IP address(es): 10.111.1.111
Setting CPU units: 1000
Restore error, undump failed: No such file or directory
Error: rst_open_file: failed to lookup path '/var/run/saslauthd/saslauthd.pid': -2
Error: can't open file /var/run/saslauthd/saslauthd.pid
Error: rst_file: -2 30505968
Error: rst_files: -2
Error: make_baby: -2
Error: rst_clone_children
Error: make_baby: -2
Error: rst_clone_children
Container restore failed
Container is unmounted
Если я остановлю saslauthd перед тем, как сделать снимок, он пожалуется на файл pid sendmail. Если я прекращаю sendmail, он жалуется на crond. и т.п.
Как правильно восстановить контейнер, для которого была создана резервная копия?
Это сообщение похоже на ошибку, пожалуйста, обновите до последней версии ядра OpenVZ и пользовательского пространства, после этого перепроверьте эти операции. Если они снова не работают, отправьте содержимое dmesg по адресу http://bugzilla.openvz.org
Такой способ работы на самом деле не поддерживается. Все делается через ploop начиная с vzctl 4.7