Linux的serial串口控制台

本人大多数情况都是在调试服务器大量的linux服务器,很多情况下也不没有必要专门准备KVM(keyboard, video, mouse),甚至有些机器根本就没有显示器接口。如何调试的?闲来无事,分享一下。

有些人说“ 给我个Linux窗口 ”是想要一个:

另外一些人说“给我个Linux窗口”,就是说他打算挖煤了:

然鹅,很多时候我说“ 给我个Linux”,意思是我要:

串行口(serial port)可以说是少数几个上古时期流传下来的接口了(当年的电话小猫就是走这个接口的)即便你的主机上没有这个接口,著名的某宝上还是很容易找到串口到USB的转接线的。而Linux本身就支持串口终端。

启用串口终端需要修改grub的配置,个人非常不建议直接修改grub.cfg文件,建议从/etc/default/grub配置开始修改。

编辑 /etc/defualt/grub

GRUB_SERIAL_COMMAND=”serial –speed=115200 –unit=0 –word=8 –parity=no –stop=1″
GRUB_TERMINAL=”serial console” # 这一行的值原本是”console”

找到GRUB_CMDLINE_LINUX这一行,在末尾增加 “console=ttyS0,115200” 注意引号! 本例假定你连接的是com1口,即在Linux下被称为ttyS0

当前的OS启动方式分为EFI和BIOS两种,所以生成grub.cfg的时候容易出问题,所以这里我用了find命令查找grub.cfg

grub2-mkconfig -o $(find /boot -name grub.cfg)

完成后重启OS后Linux kernel配置生效。

然后是在终端,以windows为例,链接好串口线之后首先确认你的本地端口是什么,这个可以通过windows的设备管理器查看,比如我用的USBtoSerial连接线是COM4。

安装并打开putty, connect type 选择serial, Serial line填COM4, Speed 写115200。

如果出现乱码,或者不响应的情况多半是配置不对,请确保putty的serial配置项跟Linux的GRUB_SERIAL_COMMAND保持一致。

推荐阅读:
事出同事对于某个设备的压力测试
首先是庆祝我们开源小站再次搬家
首先列出本站之前相关的几篇帖子
众所周知的是,CPU的频率和它

发表评论

电子邮件地址不会被公开。 必填项已用*标注

请补全下列算式: *

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据