linux下使用串口管理服务器
本文可自由转载,但请遵循“署名-非商业用途-保持一致”的创作共用协议。 永久链接:JoeCen's 小猫窝-----------------------------
欢迎转载 ,但有任何修改請來信告知,不得作为商业用途
作者: JoeCen [http://www.joecen.com]
转载时请保持该通告
这台机器是经常出现异常的状况,不是不见了网卡就是硬盘有问题。而且机器是放在阳台的阁楼上面,我只能通过ssh来连接。一旦ssh连接不了,就只好抬一把梯子,将机器搬下来,接上显示器和键盘,看看是网络问题还是其他什么问题。恼火的是,每次但机器挂掉,我将它从阁楼搬下来以后,就能正常启动了!为了避免再出现这种情况,我决定开放这台机器的串口管理。
1、首先需要开启serial的tty接口:
编辑/etc/inittab文件,查找“ttyS0”关键字。如果有一个serial,就会发现下面这一行
T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
如果机器有两个serial,就会有两行:
T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100
默认它们是被注释掉的,将注释删除,保存文件即可。
运行命令: init b
然后使用ps 命令可以看到有一个或者两个serial的后台进程接口:
2292 ttyS0 Ss+ 0:00 /sbin/getty -L ttyS0 9600 vt100
2293 ttyS1 Ss+ 0:00 /sbin/getty -L ttyS1 9600 vt100
这样就算打开了serial接口,可以接上串口线连接上机器了。
2、客户端的连接:
首先当然是要有一条串口线,接在自己的机器(比如notebook)的串口和要连接的机器的串口上。
然后使用软件进行连接,
如果是使用SecureCRT或者putty的话,可以安装下面的参数新添加一个connect,
Protocol -> Serial
Port -> COM1,(要看是接到自己的机器那个口上了)
Baud rate -> 9600
Data bit -> 8
即可连接上去。
Linux下的话我们可以使用xminicom来进行连接。
3、启动信息
serial不但可以让我们登录进去linux中,而且也可以让我们看到linux的启动信息。
如果是使用grub的话(现在没有人用lilo了吧?),我们可以在/boot/grub/menu.lst 文件中加入下面的信息:
[...] serial --unit=0 --speed=9600 terminal serial [...] # kopt=root=/dev/hda1 ro console=ttyS0,9600n81 [...]
如果是debian的话,"kopt"这一句前面是带"#"的,也就是说是注释掉的。如果去掉注释的话,"update-grub"命令会把这一句变回原状的。
上面配置的主要意思是将grub的输出定向到ttyS0中。
该完grub的配置文件以后,运行
update-grub
命令令配置生效。这样我们就可以在Serial中开到linux的启动信息了,更方便了我们排除错误。
4、其他
最后是检查/etc/securetty文件,看里面是否包含了"ttyS0"接口,如果需要在serial使用root用户登录的话,必须在该文件中配置ttyS0。Debian etch默认是允许root在serial登录的。
(CC) 本站内容可自由转载,但请遵循“署名-非商业用途-保持一致”的创作共用协议。