1. 前言
本文主要讲解Linux系统如何使用串行接口连接某些设备的Console接口,比如华为路由器、华为交换机、华为防火墙、思科路由器、思科交换机、思科防火墙。当然具有Console接口的设备也是同样适用的。比如华为NIP,锐捷路由器,锐捷交换机、锐捷防火墙,Juniper路由器、Juniper交换机、Juniper防火墙等等品牌或者设备类型同样适用。
大多数Linux/BSD的嵌入系统(如路由器,服务器和nas设备,典形的有华为VRP系统,思科IOS系统)都带有控制台接口(带RS-232的串行端口)。 BIOS可以使用此功能,并在启动BIOS接口后重定向I/O,以便您可以使用该设备。 RS-232还用于在没有安装显示或键盘的服务器上进行通信,在操作系统尚未运行时启动时,无法进行网络连接。您需要在计算机和嵌入式系统或服务器之间使用串行电缆。在这篇文章中,我将介绍在Linux / Unix / * BSD和Mac OS X下用于串行接口通信的五个实用程序。
2. 在Linux系统上查看服务器串行接口信息
[root@zcwyou ~]# dmesg | egrep --color 'serial|ttyS'
[ 1.716124] 00:05: ttyS0 at I/O 0x3f8 (irq = 4) 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_64 1/1
验证中 : setserial-2.17-33.el7.x86_64 1/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串行接口的驱动。
3. 使用cu
命令连接其它具有Console设备的接口
CentOS系统安装cu
命令:
[root@zcwyou ~]# yum -y install uucp
输出结果:
已安装:
uucp.x86_64 0:1.07-41.el7
cu命令用于调用另一个系统并充当终端拨号。 cu
命令安装在许多类似Unix的系统上,包括OpenBSD / AIX / Solaris等。您可以按以下方式使用它:
使用语法:
cu -l /dev/device -s baud-rate-speed
比如,设置ttyS0的速率为19200比特,并通过ttyS0连接思科路由器或者思科交换机或者思科防火墙
[root@zcwyou ~]# cu -l /dev/ttyS0 -s 19200
4. Linux使用screen
命令连接其它具有console接口的设备
CentOS系统安装screen
命令相关RPM包
[root@zcwyou ~]# yum -y install screen
使用语法
screen /dev/device baud-rate
使用案例,比如ttyS0以19200的比特率连接华为交换机的Console接口
[root@zcwyou ~]# screen /dev/ttyS0 19200
使用案例,比如ttySUSB0以19200的比特率连接华为路由器的Console接口或者华为防火墙
[root@zcwyou ~]# screen /dev/ttySUSB0 19200,cs8
5. Linux使用minicom
命令连接其它Console设备
CentOS系统安装minicom
命令相关的软件套件
[root@zcwyou ~]# yum -y install minicom
minicom
命令是一个通信程序,它有点像旧的MS-DOS时代的共享软件程序TELIX。键入minicom
命令连接其它Console接口的设备:
使用案例:比如通过minicom连接锐捷交换机、锐捷路由器、锐捷防火墙
[root@zcwyou ~]# minicom
6. Linux使用putty
命令连接其它Console设备
PuTTY是一个免费的,开源的基于图形界面的终端仿真器客户端,用于SSH,Telnet,rlogin和原始TCP计算协议以及作为串行控制台客户端。它适用于Linux,Unix,Mac OS X,MS-Windows和其他一些操作系统。了解如何为cisco路由器配置和使用putty:
图形化界面的RHEL/CentOS系统安装putty
需要先安装EPEL仓库
[root@zcwyou ~]# yum -y install epel-release
[root@zcwyou ~]# yum -y install putty
图形化界面的Ubuntu系统安装putty
sudo apt-get install putty
如何需要使用telnet协议连接路由器、交换机、防火墙等设备,需要在Linux系统上安装telnet客户端
[root@zcwyou ~]# yum-y install telnet
评论前必须登录!
注册