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) 本站内容可自由转载,但请遵循“署名-非商业用途-保持一致”的创作共用协议。

随机日志

  • AWStats搜索关键词中文乱码解决办法
  • apache错误解析
  • 正在试用phiten的颈圈
  • 东瀛见闻录3-日本人1
  • 有时候rp特别好-wii的频道下载
  • Leave a Reply