我现在正在使用 vagrant 来运行 centos7。我在这个 vagrant 操作系统中创建了一个 lxc 容器,该容器也以 centos7 为基础。
我可以启动 lxc 但不能使用lxc-console
。像这样:
$ sudo lxc-create -n centos -t centos
$ sudo lxc-start -n centos -d
$ sudo lxc-ls --active
centos
$ sudo lxc-console -n centos
Connected to tty 1
Type <Ctrl+a q> to exit the console, <Ctrl+a Ctrl+a> to enter Ctrl+a itself
然后就没什么可做的了,只剩等待了……
看起来像是 centos7 的问题。如何解决?
答案1
是的,我遇到了这个问题,最终找到了解决办法。Getty 无法启动,因为 lxc 实例中未创建 /dev/tty0。
您只需执行以下操作:
创建您自己的副本[电子邮件保护]
cp /lib/systemd/system/[email protected] /etc/systemd/system
注释掉
ConditionPathExists=/dev/tty0
复制的行[电子邮件保护]
请注意,您编辑的是复制的版本,因此对 getty 内容的任何未来更新都不会抹去您的编辑。如果 getty 出于某种原因进行更新,您只需检查将来是否需要更改内容。现在您应该能够将 lxc 实例作为守护进程启动,然后使用 lxc-console 访问它
我注意到 getty 很无聊,只是不知道如何自己解决这个问题,直到我发现了原始说明这里。