使用创建虚拟串口COM1<–>COM2
vmware虚拟机添加串行口,选择COM2
串口调试工具连接COM1
设置串口服务
执行dmesg | grep tty确认串口在系统中的名字,记下你想用来登录的串口,例如 ttyS1。
设置 ttyS1 这个串口免密自动登录
创建覆盖配置(推荐方法,不修改系统文件)
systemctl edit serial-getty@ttyS1.service这会打开一个临时空文件,输入以下内容:
[Service]ExecStart=ExecStart=-/sbin/agetty--autologinroot --keep-baud115200,57600,38400,9600 %I- ExecStart=(空值)必须先写,用于清除原来的命令。
- –autologin root 是免密核心参数,可换成其他用户名。
- %I 会自动替换为设备名 ttyS1。
保存并退出,systemd 会自动重载。
启用并启动服务
# 设置开机自启systemctlenableserial-getty@ttyS1.service# 立即启动systemctl start serial-getty@ttyS1.service# 查看运行状态systemctl status serial-getty@ttyS1.service内核启动参数里把控制台输出定向到你这个串口
编辑 GRUB 配置文件 /etc/default/grub
找到GRUB_CMDLINE_LINUX_DEFAULT这一行,在这一行添加
"console=ttyS1,115200 earlyprintk=serial,ttyS1,115200 "
例如:
GRUB_CMDLINE_LINUX_DEFAULT="console=ttyS1,115200 earlyprintk=serial,ttyS1,115200 debug loglevel=7"- console=ttyS1,115200:让内核把日志打印到 ttyS1,波特率 115200。
- earlyprintk=serial,ttyS1,115200:让更早期的启动信息也通过串口输出。
- loglevel=7 可以继续看到详细日志。
更新 GRUB 并重启
update-grubreboot