在CentOS中使用Serial console

手头上有一台HP ML110服务器,准备拿来当流控设备,安装完CentOS后发现机柜里面没有显示器,还得配置serial console,方便日后维护。

在网上搜了很多文档,都说国外的文档质量高,可是就serial console这个问题也折腾了我大半天,因此记下来以免忘记。

准备

检查serial口

$ sudo dmesg | grep tty

说明服务器仅有一个serial口,其标识符是ttyS0

检查CentOS所支持的tty

$ sudo ps -ef | grep tty

配置

1. /boot/grub/grub.conf

serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1
terminal --timeout=10 console serial

title CentOS (2.6.18-128.1.10.el5)
	root (hd0,0)
	kernel /boot/vmlinuz-2.6.18-128.1.10.el5 ro root=LABEL=/ console= tty1 console=ttyS0,115200
	initrd /boot/initrd-2.6.18-128.1.10.el5.img

—unit=0表示使用COM1。服务器第一个COM口的标识符为COM1,第二为COM2,以此类推。由于HP ML110只有一个COM口,所以选择—unit=0

2. /etc/inittab

在末尾加上:

s0:2345:respawn:/sbin/agetty ttyS0 115200 linux

3. /etc/securetty

添加ttyS0

$ sudo echo "ttyS0" >> /etc/inittab

配置完后需要重启服务器。

SecuCRT

Flow Control要选择XON/XOFF,否则在登录界面中,无法在Login:提示符下输入帐号和密码。这是大多数网络文档没有说清楚的。

附录:什么是tty

譬如说在screen或tmux中,创建了3个窗口,则每个窗口对应一个pts

$ sudo ps -ef | grep pts