串口控制台是什么
串口控制台让服务器通过串口线(而非显示器与键盘)提供命令行登录,运维人员用管理机的终端软件接入。信创服务器普遍是鲲鹏、飞腾、龙芯整机,现场装机、救援模式与带外排障很多都依赖串口。启用分两半:内核侧通过 console=ttyS0,115200 把内核输出送到串口,用户态侧启用 serial-getty@ttyS0 服务提供登录提示符。两处与终端软件的波特率必须一致。
基本信息
| 适用平台 | openEuler、银河麒麟、UOS 服务器版等 systemd 系统 |
|---|---|
| 内核参数 | console=ttyS0,115200n8(可同时保留 console=tty0) |
| 用户态服务 | serial-getty@ttyS0.service,由 agetty 模板实例化 |
| 终端软件 | minicom、screen、putty 等,波特率需一致 |
| 权限要求 | root;串口设备通常为 /dev/ttyS0 或 /dev/ttyS1 |
典型使用场景
- 无显卡服务器:机房整机没有显示输出,全靠串口做首次装机
- 现场救援:系统起不来时通过串口看内核信息,判断卡在哪一步
- 带外管理:串口集中到控制台服务器,实现多机统一接入
- 网络不通排障:网络配置写坏导致 SSH 失联,用串口接进去改回
- 嵌入式与工控场景:设备没有视频输出接口,串口是唯一交互通道
服务器侧配置
服务器侧配置
systemctl enable --now serial-getty@ttyS0.service # 启用串口登录
systemctl status serial-getty@ttyS0 --no-pager # 确认服务运行
ls -l /dev/ttyS0 # 确认串口设备存在
# 编辑 /etc/default/grub,在内核命令行追加串口输出:
# GRUB_CMDLINE_LINUX='... console=tty0 console=ttyS0,115200n8'
grub2-mkconfig -o /boot/grub2/grub.cfg # BIOS 引导路径
grub2-mkconfig -o /boot/efi/EFI/kylin/grub.cfg # UEFI 路径按发行版调整
systemctl daemon-reload管理机侧连接
管理机侧连接
dmesg | grep -i ttyUSB # 插入 USB 转串口线后确认设备名
ls -l /dev/ttyUSB0 # 常见为 ttyUSB0
minicom -D /dev/ttyUSB0 -b 115200 # minicom 连接
screen /dev/ttyUSB0 115200 # 或用 screen
# 退出 screen:Ctrl+A 然后 K;minicom:Ctrl+A 然后 X
stty -F /dev/ttyUSB0 115200 cs8 -cstopb -parenb # 必要时手工设置串口参数三处波特率核对
| 位置 | 配置项 | 常见错误 |
|---|---|---|
| 内核命令行 | console=ttyS0,115200n8 | 写成 9600 或漏写波特率,内核日志乱码 |
| getty 服务 | 由 systemd 模板自动带波特率 | 手工改 agetty 参数与服务单元不一致 |
| 终端软件 | minicom/screen 的 -b 参数 | 与内核不一致导致输出全是乱码 |
| 串口设备 | /dev/ttyS0 与 /dev/ttyS1 | 接错物理口,完全没有输出 |
| BIOS/固件 | 串口重定向开关与端口 | 固件未开串口重定向,早期引导无输出 |
信创服务器(鲲鹏/飞腾整机)的装机与救援很多依赖串口;验证不只看服务状态,要实际接线登录一次确认端到端可用。
UEFI 引导的 grub 配置文件路径与 BIOS 不同(在 /boot/efi 下的发行版目录里),改错文件重启后串口依旧没有引导输出。