我需要将容器移动到不同的文件系统,特别是已挂载的 LUKS/dm-crypt 主目录的子目录。我尝试将其移动到那里,然后将其绑定挂载或符号链接到 /var/lib/lxc/foo,但当我这样做时lxc-start -n foo
会立即退出。
调试输出只是显示lxc_start - container init process exited
和lxc_error - child <30146> ended on error (1)
。即使使用,upstart 也没有输出任何输出,因此lxc-start -n foo /sbin/init --verbose
看起来/sbin/init
它在执行任何操作之前就退出了。如果我将整个/var/lib/lxc
目录符号链接到 dm-crypt home 并为一个全新的容器执行 lxc-create,我会得到相同的结果,但如果容器是从同一文件系统符号链接的,它就可以正常工作。
我如何将容器移动到 dm-crypt 主目录以便它能够运行?
这是在 Ubuntu 12.10 上使用的sudo lxc-create -n foo -t ubuntu
。
答案1
问题在于使用的挂载选项。因为我使用的是 pam_mount 和一些复制粘贴,所以我打开了nodev
和nosuid
选项。一旦我删除它们,它就起作用了。