我在各种Supermicro和其他白盒服务器上运行Linux(Red Hat,CentOS,SL,版本5和6)。 有些有IPMI,有些则不。
其中一些系统连接到键盘/显示器(KVM)控制台交换机。 其他系统连接到远程串行控制台。 而较新的服务器被挂接到IPMI中,并且可以通过基于局域网的KVM控制台redirect或LAN上串行(SOL)获得。
使用所有这些方法,我们希望在所有串行控制台和KVM屏幕上看到一致的输出。 例如,我们希望能够与系统进行交互,从启动到closures,我们希望看到整个启动顺序。 这包括看到由以下各项打印并与之交互的任何消息:
fsck打印的消息,例如在大型文件系统的冗长fsck中。 在一个带有串行控制台的系统上,有时候fsck会在这里无所事事,等待系统pipe理员input一个密码。 但是系统pipe理员可能不会看到这个密码提示,除非我们碰巧记得进入串行控制台。 Starting sshd: [ FAILED ] typo in sshd_config on line 171 ) login:提示,并允许我login到系统。 我已经尝试了一些方法,但似乎无论我放在grub.conf ,有些消息是打印到显示器还是串行控制台,但不是两者。
是否有可能告诉引导程序,Linux内核,操作系统等打印所有消息到所连接的显示器以及串口控制台?
我已经尝试了一些方法,但似乎无论我放在grub.conf中,有些消息是打印到显示器还是串行控制台,但不是两者。
理论上,可以在grub.conf使用多个console= options来尽可能将Linux内核输出到所有控制台,如下所示:
title CentOS (2.6.18-194.el5) root (hd0,0) kernel /vmlinuz-2.6.18-194.el5 ro root=LABEL=/ rhgb console=tty0 console=ttyS0,9600n8 initrd /initrd-2.6.18-194.el5.img
但实际上,根据串行控制台HOWTO ,来自init和syslog的消息只出现在最后列出的控制台设备上。