我从头开始构建一个linux容器,想要启动它。
首先,我使用chroot进行测试,例如run" chroot rootfs / / init",它正确启动。
但是,当我尝试使用" lxc-start -n mycontainer"时,其中一个进程存在段错误,dmesg显示“[973.829549] servicemanager [1634]:段错误0 ip 40001094 sp bff23920 servicemanager [40000000 + 3000]中的错误4“
即使我尝试" lxc-start -n mycontainer - / bin / sh" (只是启动sh而不是整个init进程),它显示" [333.572917] sh [1715]:segfault at 90 ip b76d9a80 sp bff4cb24 error 4 in libc.so [b767a000 + 99000]",仍然是一个段错误问题。
我检查了lxc-start日志,容器设置部分没问题,没有错误。
然后我浏览lxc源代码,发现它使用pivot_root而不是chroot。这可能是问题吗?或者其他类似命名空间的东西,cgroup在这里讨论段错误?
答案 0 :(得分:0)
lxc-start对我来说很好,pivot_root不是问题。
1)只是&lxc-start -n mycontainer'是不是很好,因为它会尝试启动init
lxc-start -n mycontainer / bin / sh怎么样?