前言
最近发现在6串口的主板安装Centos 7后,串口只能识别4个,Ubuntu和windows没有此问题,通过网上查找相关资料后解决,这里记录下解决方法。为了方便这里用虚拟机演示。
查看串口情况
dmesg|grep tty
dmesg|grep serial
如果物理机超过4个串口,这里多出的串口会显示disable
产生原因:很多Linux发行版的8250串口驱动默认限制了能够使用的最大串口数量为4
查询内核串口配置
cat /boot/config-'uname-r'|grep 8250
配置项RUNTIME_UARTS=4限制了你最多只能同时使用4个串口设备,如果你有6个串口,那么只能识别出4个,另两个是disable状态
解决办法
1、配置内核重新编译,太费时不推荐
2、GRUB添加内核启动参数 8250.nr_uarts=?
(数量根据自己真实情况输入),推荐
第二种方法解决步骤
- 打开
/etc/default/grub
, 修改GRUB_CMDLINE_LINUX
行,添加8250.nr_uarts= 6
grub2-mkconfig -o /boot/grub2/grub.cfg
执行更新
注意UEFI 系统上的指令是 grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
重启电脑后,输入cat /proc/cmdline
查看内核输出参数,如果有刚添加的8250即说明配置成功,这样6个串口就都能使用了
请问大神,有具体修改的教程么,本人小白一个
看解决办法第二项