![Linux:为什么单用户模式在串行控制台上运行,但在连接的键盘/视频/显示器上运行却不运行?](https://linux22.com/image/569231/Linux%EF%BC%9A%E4%B8%BA%E4%BB%80%E4%B9%88%E5%8D%95%E7%94%A8%E6%88%B7%E6%A8%A1%E5%BC%8F%E5%9C%A8%E4%B8%B2%E8%A1%8C%E6%8E%A7%E5%88%B6%E5%8F%B0%E4%B8%8A%E8%BF%90%E8%A1%8C%EF%BC%8C%E4%BD%86%E5%9C%A8%E8%BF%9E%E6%8E%A5%E7%9A%84%E9%94%AE%E7%9B%98%2F%E8%A7%86%E9%A2%91%2F%E6%98%BE%E7%A4%BA%E5%99%A8%E4%B8%8A%E8%BF%90%E8%A1%8C%E5%8D%B4%E4%B8%8D%E8%BF%90%E8%A1%8C%EF%BC%9F.png)
我有一台 Scientific Linux 6.1 系统,它安装在一台支持 IPMI 的 Supermicro 服务器上。它还运行 Upstart,这会影响串行控制台的工作方式。
我的系统出现了严重问题,需要我登录到单用户模式进行维护。我站在连接到服务器的 KVM(VGA 控制台)前面,可以看到所有 BIOS 和启动消息。启动顺序按部就班,然后告诉我有一个损坏的文件系统,仅此而已。我从未收到登录框的提示,屏幕上也没有显示任何有关维护模式的信息。
我最终使用串行控制台连接到主机,并看到以下提示:
* An error occurred during the file system check.
*** Dropping you to a shell; the system will reboot
*** when you leave the shell.
Give root password for maintenance
(or type Control-D to continue):
- 为什么单用户模式的提示仅出现在串行控制台上?
- 更重要的是,我可以让它同时出现在串行控制台和所连接的键盘/视频/显示器上吗?
我的内核命令行是这样的:
kernel /boot/vmlinuz-2.6.32-131.17.1.el6.x86_64 ro root=UUID=blah-blah-blah KEYBOARDTYPE=pc KEYTABLE=us console=tty0 crashkernel=auto console=ttyS2,115200n8r
答案1
因为 init 尚未生成多个 TTY(getty、mgetty 等),所以您只有主 TTY。主 TTY 是console=
内核命令行上的最后一个参数。所有控制台参数都会获得输出,但只有最后一个参数可以作为输入。