串口COM透传
本文介绍如何将宿主机的串口(COM)透传到虚拟机内使用。
配置宿主机
查看宿主机上的 COM 设备,采用命令 setserial 查看:
# 查看板载串口设备
$ sudo setserial -g /dev/ttyS[0123]
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16550A, Port: 0x1020, IRQ: 18
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3
# 查看USB串口
$ sudo setserial -g /dev/ttyUSB[01]
/dev/ttyUSB0, UART: unknown, Port: 0x0000, IRQ: 0
找到宿主机上待透传的串口设备路径,例如 /dev/ttyUSB0
在QEMU增加如下命令行参数将该串口设备传入虚拟机:
-chardev tty,path=/dev/ttyUSB0,id=hostusbserial
-device pci-serial,chardev=hostusbserial
通过如下climc命令为指定宿主机设置以上命令行参数:
climc server-add-extra-options <sid> chardev tty,path=/dev/ttyUSB0,id=hostusbserial
climc server-add-extra-options <sid> device pci-serial,chardev=hostusbserial
重启该虚拟机,在虚拟机详情页面查看命令行参数中是否增加了以上参数。