本文主要讲解Linux系统如何使用串行接口连接某些设备的Console接口,比如华为路由器、华为交换机、华为防火墙、思科路由器、思科交换机、思科防火墙。当然具有Console接口的设备也是同样适用的。比如华为NIP,锐捷路由器,锐捷交换机、锐捷防火墙,Juniper路由器、Juniper交换机、Juniper防火墙等等品牌或者设备类型同样适用。
大多数Linux/BSD的嵌入系统(如路由器,服务器和nas设备,典形的有华为VRP系统,思科IOS系统)都带有控制台接口(带RS-232的串行端口)。 BIOS可以使用此功能,并在启动BIOS接口后重定向I/Olinux命令,以便您可以使用该设备。 RS-232还用于在没有安装显示或键盘的服务器上进行通信,在操作系统尚未运行时启动时,无法进行网络连接。您需要在计算机和嵌入式系统或服务器之间使用串行电缆。在这篇文章中,我将介绍在Linux / Unix / * BSD和Mac OS X下用于串行接口通信的五个实用程序。
[root@zcwyou ~]# dmesg | egrep --color 'serial|ttyS'
ttys0 at mmio 0xb0000100 (irq = 10) is a bcm63xx。[ 2.050000] serial8250: ttys1 at mmio 0x10000c00 (irq = 12) is a 16550a。[ 0.088000] serial8250.0: ttys0 at mmio 0xb8020000 (irq = 19) is a 16550a。
[ 1.731238] usbcore: registered new interface driver usbserial_generic
[ 1.731244] usbserial: USB Serial support registered for generic
您可以使用setserial命令来设置和报告与串行端口关联的配置信息:
先安装setserial命令套件
[root@zcwyou ~]# yum -y install setserial
总下载量:25 k
安装大小:31 k
Downloading packages:
setserial-2.17-33.el7.x86_64.rpm| 25 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : setserial-2.17-33.el7.x86_641/1
验证中: setserial-2.17-33.el7.x86_641/1
已安装:
setserial.x86_64 0:2.17-33.el7
完毕!
[root@zcwyou ~]# setserial -g /dev/ttyS[0123]
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: unknown, Port: 0x02f8, IRQ: 3
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3
不管是RS-232的线缆还是带USB转换头,都可以在系统上显示出来,较新内核的Linux系统,比如CentOS或者Ubuntu,一般都是自动解决USB转RS-232串行接口的驱动。