恢复 OpenVZ 快照时 pid 文件出现问题

恢复 OpenVZ 快照时 pid 文件出现问题

我正在尝试不同的方法来拍摄正在运行的 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,那么它会抱怨 sendmail 的 pid 文件。如果我停止 sendmail,它会抱怨 crond。等等。

恢复已备份的容器的正确方法是什么?

答案1

此消息看起来像是一个错误,请升级到最新的 OpenVZ 内核和用户空间,然后重新检查此操作。如果它们再次失败,请将 dmesg 内容发送到http://bugzilla.openvz.org

答案2

这种做法实际上不受支持。从 vzctl 4.7 开始,一切都通过 ploop 完成

相关内容