Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说xshell怎么连接交换机console_如何用console口配置交换机,希望能够帮助你!!!。
05虚拟终端,常用伪终端详解
很久很久以前,在计算机刚刚诞生的时候,提供人机交互功能、与计算机等进行通讯的人机界面,是由专门的终端设备完成的。这种连接方式一直沿用到具有多任务、多用户功能的大型计算机上。随着工业技术的发展和微机的普及,专门的终端设备已经很难见到了,但是终端连接的需求依然保留着。这个需求由一类应用程序满足,它就是虚拟终端(很多时候我们也把它叫做伪终端)类应用程序。这一类的软件有很多,它们依然发挥着终端的作用,但是连接的已不再是大型机,而是一些专门的工业设备,最常见的就是路由器、交换机、UNIX和Linux主机等。
Console口(串口)拥有最大管理权限和最后的登录能力,也是我们最常用的管理接口。现在的很多虚拟终端工具不仅提供串口连接方式,还能通过Telnet、SSH、SFTP、RLOGIN等网络协议进行网络连接,正是为了满足我们通过网络远程管理的需要。
我们经常用到的伪终端软件有:
1)Hyper Terminal,微软从 Hilgraeve 公司购买,XP和Server 2003自带,后续的Windows发行版中就没有了;
2)Xshell,收费软件,学校和家庭用户可免费获得和使用,功能丰富,可定制化程度高,使用体验好;
3)MobaXterm,收费软件,家庭用户可免费获得和使用,除了支持常用的远程连接功能,甚至还支持VNC和NFS等,不仅提供客户端功能,而且还提供服务器功能,软件下载之后就可以使用,无需安装,简直天下无敌;
3)SecureCRT,收费软件,需要授权,甚至连试用版都不提供,虽然网上有盗版可以下载,但是我个人非常不建议;
4)minicom、cutecom、qcom等,Linux下开源免费的虚拟终端软件;
5)macwise、MAC OS下最好用的虚拟终端,有偿使用,所以我推荐你使用PuTTY,虽然需要自己编译,但是这是值得的;
6)PuTTY,基于MIT license发布,提供源码和主流操作系统的二进制下载。强大的功能再加上免费的授权,真是一个不错的选择。
很多伪终端程序都受PuTTY影响,它提供各种主流操作系统的源码下载,而且授权也非常友好,在商业环境下使用也不受影响。作为一个老实人,我推荐你优先使用它。但如果你运行的是Unix系系统,推荐你还是使用minicom吧,它也是免费开源的,是Unix系系统下的首选虚拟终端软件。我自己在Windows系统下使用PuTTY,在Linux系统下使用minicom。
我们常用到的伪终端功能有:1)连接设备;2)捕获文本;3)下载文件;4)上传文件;5)执行脚本。接下来就从这几个方面进行叙述,介绍几款伪终端软件的使用。
这种电脑一般都自带串口(RS232c,DB9,male),也就是我们经常说的COM口。
图05-01 台式机连接网络设备Console口,CCNA3.1
这种电脑一般都不带有COM口,如果使用这样的电脑管理网络设备,需要借助一条USB转串口的转接线。市场上有卖,售价从十几元到几十元不等,建议还是买一个贵一点的,一般来说贵一点的更靠谱些。
我还使用过Bluetooth-RS232的转接线。好处是比较方便,不用接线,无线通信距离可达10m,只有在第一次使用时需要电脑和转接线进行匹配(也有叫配对的)。坏处是收工时拿起电脑就走,转接线忘了拿。
图05-02 USB-RS232串转接线和串口线
对于Windows系统来说,使用USB转串口,首先要解决驱动问题,只有驱动安装正确,串口转接线才能正常工作。
把转接线的接到电脑的USB口上,运行附带的驱动程序。如果在安装驱动失败,或者驱动安装好后不能正常工作,检查之前有没有安装过其它串口驱动,可能是串口驱动有冲突。
安装完成后可以在设备管理器中看到相关的串口设备。
图05-03查看安装好的串口驱动及对应的串口号
驱动安装在哪一个USB口,以后使用时就只能在这一个口使用,没有安装过驱动的USB口不能使用。
Windows下常见的伪终端软件有Hypertrm,SecureCRT,Xshell,PuTTY等。我们重点推荐PuTTY和Xshell。
包括UNIX,Linux,Mac OS。如果你的便携机运行的是这些操作系统,恭喜你,我可能连串口驱动都无需安装,真正做到即插即用。
UNIX和Linux一样,直接配置伪终端软件minicom,就可以连接设备了,不用担心驱动的问题,当然你也可以选择使用CuteCom,Qcom,PuTTY等。
Mac OS下比较好用的伪终端软件是macwise,但是是付费程序,所以我建议你自己下载PuTTY的源码自己编译,当然编译需要编译器Xcode,但是这样做是值得的,不仅省钱,而且还能提升自己的动手能力。软件编译完成之后就能使用了,直接打开软件配置串口参数,不需要安装串口驱动。
此处省略若干字。对于线都不会接的人,我们放弃治疗。
当然你也可以从开始菜单或直接到程序所在目录来运行程序。
图05-04 打开Windows NT自带的超级终端
图05-05 给这个终端连接起一个名字叫“niuhai”
图05-06 使用COM9串口
通过网络连接使用的是协议是Telnet,因为其简便,目前仍有很多人使用。hypertrm支持的连接方式也只有这两种,串口和网络Telnet。
图 06-07 或者通过网络连接到要管理的设备
9600 波特率,8个数据位,无校验,1个停止位,无流控。
“9600,8,N,1”是非常常用的串口参数。不管是连接CISCO设备、Huawei设备、H3C设备,都是使用这一组串口参数。
图05-08 最常用的网络设备串口参数
图06-09 通过超级终端进入设备管理界面
“Transfer->Capture Text...”,在新打开的对话框里选择保存捕获文本文件的位置。这个功能非常有用,它可以将终端打印出来的内容捕获到一个文件当中,方便日后回溯和日志分析。
图05-10 开启终端文本捕获
图05-11 选择捕获的文本文件存放的位置
“Transfer->Receive File...”,在新打开的对话框里选择保存文件的位置,并选择所使用的串口文件传输协议,常用的是Xmodem。
图05-12 开始接收文件
图05-13 串口常用的文件传输协议是Xmodem
“Transfer->Send File...”,在新打开的对话框里选择要上传的文件,并选择所使用的串口文件传输协议,常用的是Xmodem。
图05-14 开始上传文件
图05-15选择要上传的文件和使用串口文件传输协议
Hyper Terminal没有这个功能。但Windows系统有,但一般也很少用到。
常见于win7、win server 2008及以上系统。因为系统默认没有安装超级终端程序,因此打开失败。
把可执行程序文件和动态连接库文件从XP或Server 2003上拷贝过来即可。拷贝过来的文件可以放在与原文件相对应的目录,也可以放在一个自己喜欢的目录,但是要保证是同一个目录,否则执行程序时可能会找不到动态连接库,导致可执行程序无法运行。要不就换个终端连接工具吧,PuTTY、Xshell、MobaXterm、SecureCRT等都是不错的选择。
只拷hypertrm.exe和hypertrm.dll,程序就可以运行和使用了,但是没有图标和帮助。再加上hticons.dll、hypertrm.chm、hypertrm.hlp这三个文件,才会显示图标和帮助信息,使用体验也会更好一些。
我一般会复制表05-01中的前三个文件。
表05-01 hypertrm程序相关文件及说明
文件名
所在位置
重要性
说明
hypertrm.exe
C:\Program Files\Windows NT
必需
超级终端的可执行程序
hypertrm.dll
C:\Windows\System32
必需
程序运行所需要的动态链接库
hticons.dll
C:\Windows\System32
可选
超级终端运行需要的相关的图标
hypertrm.chm
C:\WINDOWS\Help
可选
帮助文件
hypertrm.hlp
C:\WINDOWS\Help
可选
帮助文件
之前安装过其它厂家的串口驱动,相互之间不兼容。需要先把之前安装的串口驱动卸载,再重新安装这一次需要的驱动。
其它程序占用此串口,或者选择串口错误。台式机一般是COM1,便携机安装USB转串口后,会虚拟出来一个串口号,通过设备管理器可以查看到。串口号也可以通过设备管理器修改。
串口参数错误或连接线故障。检查串口参数,替换USB转串口转接线或串口线,重点检查USB转串口转接线,尤其是两端接头部分。
PuTTY基于MIT License发布,是一款非常优秀的伪终端软件,很多伪终端程序都受它影响,它支持多种常见连接协议,比如Raw,Telnet,Rlogin,SSH,Serial等。
PuTTY除了拥有丰富的功能和小巧的身段外,最吸引人的地方就是开放源代码。官方提供各种平台下的源代码,比如Windows、Unix、MacOS等,用户可以下载源代码后根据自己的需要再编译或再开发,这样的好事实在难得。官方还提供两种Windows平台下的二进制安装包,分别是.exe和.msi,可满足不同的安装场景需求。PuTTY当前最新版本是0.73,软件官方下载地址是:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html。
安装包中除了包含putty.exe外,还有plink.exe,pscp.exe,psftp.exe等。
Putty.exe是安装包中最常用也是最重要的程序,是实现Serial、SSH、Telnet等连接的客户端。
Plink.exe是putty.exe的命令行模式,是putty.exe的后台程序。
Pscp.exe是一个SCP的命令行客户端,用来实现安全的远程复制。
Psftp.exe是一个SFTP的命令行客户端,用来实现安全的文件传输,功能与FTP类似。
下载完成后,双击安装程序包,根据安装向导可轻松完成完成安装,如果不修改安装路径,每一步都按默认安装就行了。安装完成后会打开一个Readme文档,建议看一下再关,这里包含一个简单的使用说明和遇到问题的处理方法。
因为软件安装完成后只创建了开始菜单快捷方式,并没有创建桌面快捷方式,所以启动程序可以通过开始菜单快捷方式,或到磁盘对应的文件安装目录下找到相应的程序后,双击启动。
启动程序就打开新建会话界面,如下图05-16所示。
图05-16 新建会话及基本配置选项
这个界面是会话的基本选项配置界面,主要配置连接协议,连接地址等。可以将设置好的会话起个名字保存起来,下次使用时选中这个会话名,加载会话参数就可以了,省去了再次配置的步骤。
缺省情况下,PuTTY的复制与粘贴都是用鼠标操作完成。
复制,按下鼠标左键,选中窗口中的文本,松开左键,自动复制到剪贴板;
粘贴,窗口文本区按下鼠标右键,自动粘贴。这可能会造成一些错乱。
如果想在文本区调出鼠标右键菜单,可以在按下右键之前按住键盘上的“Ctrl”键。如果嫌按“Ctrl”键的操作麻烦,可以修改这个操作。在左栏“Category(分类)”中选中“Select(选择)”分类,打开右边的“Options controlling copy and paste(复制粘贴选项控制)”界面,选择“Action of mouse buttons(鼠标按键动作)”项,设置为“Windows (Middle extends, Right brings up menu)”,将鼠标按键动作设置为Windows模式。
设置后用户在文本区再按下鼠标右键后就不会自动粘贴了,取而代之的是调出右键菜单。如下图05-17和图05-18所示。
图05-17 设置PuTTY鼠标按键动作模式为Windows
图05-18 设置鼠标按键动作模式为Windows,文本区右键调出右键菜单
图05-19 配置会话日志
在使用PuTTY时很容易忽略的一个配置选项,但是它真的非常重要。如果没有记录会话日志,基于日志分析的巡检工作、问题的追踪回溯、故障定位、远程求助等,所有基于捕获日志才能开展的工作统统无法进行。在生产中无论如何强调它的重要性都不为过。
我们选择所有可打印的输出,并将文件保存的特定的磁盘目录下面。在填写日志文件的名字时候有一个小技巧,根据下面的填写提示,像上图那样填写。上面文本框中填定的文件名格式解释如下:
D:\putty.log\&H.&P.&Y&M&D.&T.log
D:\putty.log\,日志文件存放的位置;
&H,主机名;
&P,端口号;
&Y,年;
&M,月;
&D,日;
&T,时分秒;
.log,日志文件的扩展名。
中间的点“.”是分隔符,根据个人习惯也可以用“_”或“-”代替,最好是使用英文字符,否则可能会出现乱码或日志文件保存失败等问题。强烈建议读者使用上面的样例配置会话日志。
每一个会话都要单独配置会话日志,然后再将会话保存,下一次使用时选中这个会话,然后点击“Load”按钮加载配置即可,有关会话日志的配置也会被加载。
初次开启会话需要配置连接参数,如果使用已经保存的会话,可以选中会话名然后加载会话参数。待会话参数设置或加载完成后,可以通过点击如图05-16基本选项配置界面、或图05-17复制粘贴选项控制界面、或图05-19日志参数配置界面的“Open”按钮来开启会话。开启的会话如图05-20所示。
图05-20 开启的PuTTY会话窗口
除了使用PuTTY这种GUI的界面开启会话,也可以使用命令行这种TUI的方式开启,运行PuTTY安装目录下的plink.exe就可以了,它是PuTTY的命令行方式。TUI下还可以配合脚本文件同时使用,可以扩展更多功能。我个人更喜欢TUI,觉得它更简洁有趣。
会话已经连接好,但是现在要改变会话参数或打开新的会话,可以在现在有会话窗口的标题栏点击鼠标右键,在打开的快捷菜单中选择相关的操作即可。比如当我们一开始连接时忘了记录会话日志,现在就可以点击当前会话窗口标题栏,选择“Change Settings...”选项,重新设置当前会话的日志记录配置。右键快捷菜单不仅仅有改变当前会话参数选项,还可以新建会话和复制当前会话等。如下图05-21所示。
图05-21 PuTTY会话窗口右键菜单
菜单中的“New Session...”可以打开一个像图05-16一样的新建会话窗口。“Saved Sessions”可以展示已经保存的会话,点击已经保存的会话就可以打开它。“Full Screen”命令可以提供一个全屏的黑底白字界面,退出全屏可以通过左键点击全屏窗口的左上角,调出会话窗口快捷菜单,取消全屏。全屏的样子非常酷,值得一试。
网络工程师在新设备开局上线时会用到Serial会话,开局上线后一般都会配置网络管理,下次再管理设备时就不需要了。硬件工程师或嵌入式软件工程师在做专用设备的开发调试时也会用到Serial会话。新建Serial会话如下图05-21所示。
普通台式电脑上只有一个串口,串口号是COM1。特种计算机(或叫做工控机)上一般都会有多个串口,使用时要注意串口号不能填错。在便携机上,我们通常使用USB转串口转接线,需要用户自己到设备管理器中去查一下串口号。所有的串口号都需要用户手工填写,软件不能读取并给出选项。串口号不能填错,错了就连不上了。串口号的填写类似于:COM1,COM2,COM3等等,具体的号码要自己查看,如图05-22所示。
图05-22 设备管理器中的串口号
填完基本配置选项后,再根据7.4节中的描述配置会话日志。
图05-23 新建PuTTY串行会话
配置完会话参数,接下来就是配置串口参数了,不管是网络工程师、硬件工程师,还是嵌入软件工程师,使用得最多的串口参数都是“9600”,“8”,“N”,“1”,即9600波特率,8个数据位,无校验,无流控,1个数据位。如图05-24所示。
图05-24 PuTTY串行会话参数设置
所有参数配置完成后先不要急着打开会话,先把会话保存,然后再打开它,下次使用这个串口就不用做配置了。
SSH (Secure Shell,安全外壳),也叫安全外壳协议,我们通常说的SSH多数情况下是指SSH Client。远程管理Linux服务器和网络设备的最佳推荐是使用SSH协议,最主要原因是因为它安全和受支持度比较高。新建SSH会话如下图05-23所示。
需要填写远程被管理设备的主机名或IP地址,通常我们都是通过IP地址连接的。
填完基本配置选项后,再根据7.4节中的描述配置会话日志。
所有参数配置完成后先不要急着打开会话,先把会话保存后再打开,下次使用这个地址连接时就不用配置了。
图05-25 PuTTY SSH会话参数设置
经常用在远程管理或本机虚拟设备管理,但是远程管理的功能因为安全的原因逐渐被SSH替代。新建Telnet会话如下图05-16所示,创建过程与SSH会话类似,只是远程管理通常使用的端口是23。同样是先配置基本连接参数,再配置会话日志记录,然后是保存会话,最后才是打开会话,下一次再使用时就方便多了。
SFTP(Secure File Transfer Protocol,安全文件传输协议),可以认为是FTP(File Transfer Protocol,文件传输协议)安全版本,相对于FTP来说更加安全。SFTP会话可用来做远程的文件传输,经常用在设备备份升级的时候。使用时需要打开命令行窗口,然后调用PuTTY安装目录下的可执行文件psftp.exe,建立远程连接。比如在我的电脑上,PuTTY的安装路径是C:\Program Files\PuTTY,因此在这个目录下运行psftp.exe程序,再加上合适的参数,就可以登录上远端主机,传输文件了。如图05-26所示。
图05-26 使用PSFTP会话参数设置
SCP(Secure copy,安全拷贝),基于SSH,连接和文件传输都是加密的,相对比较安全。运行pscp.exe程序的方式与运行psftp.exe相似,也需要借助命令行窗口,而且运行这个程序时也是需要指明可执行文件的路径和参数。如图05-27所示。
图05-27 使用PSFTP会话参数设置
不带参数直接执行pscp.exe程序,会显示程序的使用帮助,从帮助中我们可以看到,pscp.exe程序也可以通过带参数“-sftp”的形式来使用sftp连接。
PuTTY是一款功能强大,手段丰富的远程管理程序,不仅开放源代码,免费授权,而且还拥有简洁的界面和小巧的身段(安装包大小只有3094KB),深受广大资深ICT从业人员喜爱。它的GUI界面更加容易上手,TUI界面也同样好用,是最值得推荐的虚拟终端软件。
Windows平台下一款非常优秀的伪终端软件,是Windows平台伪终端软件首选。支持的连接协议有Serial、SSH、SFTP、Telnet、Rlogin等。
它功能强大、简洁优雅、高度自由,有很多快捷键可以使用。唯一不好的地方就是商业授权,如果是非商业环境,我们可以使用它的免费版本。下载地址http://www.netsarang.com/download/down_form.html?code=522。
新建会话快捷键是“Alt+N”,也可以通过菜单新建“File->New...”。
依次点击菜单“File->New...”,或者使用快捷键“Alt+N”,打开新建会话对话框,“Name”项为必填项,用来给会话连接起一个名字,比如“SerialCOM3”,不用使用“COM3”等系统预留名字或包含非法字符的名字,长度也有限制,但是我们一般也触不了上限,最好使用简单且一目了然的名字。“Protocol”项选择“SERIAL”。“Description”项用来给会话添加描述信息,选填项,但是建议还是填写一下,为了方便以后使用。其它项目保持默认即可。点击“OK”,确认并保存。如图05-28所示。
图05-28 新建一个串行会话
设置完会话信息后,需要再设置一下串口参数,我们把串口参数设置成“9600”,“8”,“1”,“None”,“None”,点击“OK”,确认并保存。如下图05-29所示。
图05-29 设置串口参数“9600-8-N-1”
依次点击菜单“File->New...”,或者使用快捷键“Alt+N”,打开新建会话对话框。“Protocol”选择为“SSH”。“Name”项为必填项,用来给会话连接起一个名字,比如我起的名字“web”。“Host”项也是必填项可以填写被管理主机的主机名或IP地址,我们一般都是用IP地址。“Port Number”项也是必填项,如果服务端没有修改过端口号保持默认即可。“Description”项是选填项,用来给会话添加备注信息。点击“OK”,确认并保存。如图05-30所示
图05-30 设置SSH会话连接参数
依次点击菜单“File->New...”,或者使用快捷键“Alt+N”,打开新建会话对话框。“Protocol”选择为“SFTP”。“Name”项为必填项,用来给会话连接起一个名字,比如我起的名字“sftp.web.server”。“Host”项也是必填项可以填写被管理主机的主机名或IP地址,一般使用的都是IP地址。“Port Number”项也是必填项,如果服务端没有修改过端口号保持默认即可。“Description”项是选填项,用来给会话添加备注信息。点击“OK”,确认并保存。如图05-31所示
图05-31 设置SFTP会话连接参数
依次点击菜单“File->New...”,或者使用快捷键“Alt+N”,打开新建会话对话框。“Protocol”选择为“SFTP”。“Name”项为必填项,用来给会话连接起一个名字,比如我起的名字“telnet”。“Host”项也是必填项可以填写被管理主机的主机名或IP地址,一般使用的都是IP地址。“Port Number”项也是必填项,如果服务端没有修改过端口号保持默认即可。“Description”项是选填项,用来给会话添加备注信息。点击“OK”,确认并保存。如图05-32所示。
图05-32设置telnet会话连接参数
依次点击菜单“File->Open...”,或者使用快捷键“Alt+O”。打开会话对话框,选中其中一个会话,点击“Connect”,或者双击这个会话,如图05-33所示。
图05-33 打开已经建好的连接
依次点击菜单“File->Transfer->XMODEM->Receive with XMODEM...”可打开接收文件对话框,用于接收文件,如图05-34和图05-35所示。
图05-34 使用串口接收文件
图05-35 保存接收的文件
依次点击菜单“File->Transfer->XMODEM->Send with XMODEM...”可打开发送文件对话框,用于发送文件,如图05-36图05-37所示。
图05-36 使用串口发送文件
图05-37 打开要发送的文件
依次点击菜单“Tools->Sript->Run”,打开脚本对话框,选择要运行的脚本,点击“Open”按钮即可执行,如图05-38和图05-39所示。Xshell还提供了常用脚本的示例,真是太贴心了!
图05-38 打开运行脚本菜单
图05-39 打开脚本文件
相当于hypertrm上的捕获文本,就是把操作设备时在界面中显示出来的所有字符记录到指定的文件当中。这是一个非常有用的功能,记录日志是一项意义重大的事项,我们要求打开伪终端连接要做的第一件事就是开启日志记录。不同于PuTTY需要为每一个会话配置日志,Xshell日志的配置全局生效,应用于所有会话。
快捷键“Alt+P”,打开会话属性对话框。如图05-37。在左边的“category”中点击“Advanced”下的“logging”类,在右边中下“Log Options”中选中第一个复选框“Start logging upon connection”,即可以对会话日志自动记录。
另外,在开始记录时提示文件保存路径(Prompt me to choose path when logging starts)和在每一行行首添加时间戳(Add timestamp at the begging of each line)都是非常有用的功能。如图05-40所示。
图05-40 设置日志自动记录
如果会话已经开始,但是忘记了设置日志记录,也可手动开启日志记录功能。
依次点击菜单“File->Log->Start...”,手动开启日志记录功能。
在新打开的对话框中设置日志保存的位置和名称,点击“save”,开始记录。如图05-41和图05-42所示。
图05-41 手动开启日志记录功能
图05-42 设置日志记录的位置和名称
推荐使用自动记录。
1)缺省的富功能界面。
如图05-43所示。
图05-43 富功能界面
2)轻界面
通过“View”菜单设置的轻界面。如图05-44所示。
图05-44 轻界面
3)超轻界面
通过“View”菜单设置的超轻界面。如图05-45所示。
图05-45 超轻界面
4)多窗口平铺
只需鼠标轻轻拖动标签,各种平铺效果随心所欲。如图05-46所示。
图05-46多窗口平铺
5)全屏
最帅的当然是全屏啦!快捷捷键“Alt+Enter”,菜单操作“View->Full Screen->Full Screen”。我最喜欢的是“Shift+Alt+Enter”,“多窗口全屏”,可以通过快捷键“Alt+Tab”来切换各个窗口。如图05-47所示。
退出全屏,把刚才按的快捷键再按一下。
图05-47 多窗口全屏
6)半透明
半透明呀!怎么可以这么帅?快捷键“Alt+R”来回切换。如图05-48所示。
图05-48 界面半透明效果
这是一项帅到没朋友的功能,虽然我很少使用这项功能,但是还是要向自由精神致敬!如图05-49所示。
图05-49 自定义快捷键
Windows平台下一款不错的伪终端软件。
支持标签式多伪终端连接,支持的连接接协议有Serial(串行连接,比如我们常用RS232串口)、telnet、telnet/ssl、ssh1、ssh2、Rlogin、TAPI、Raw等。
当然,也支持日志记录、文件上传及下载和运行脚本等功能。
不好的一点就是它需要支付一定的费用。什么?激活成功教程版?还是支持一下作者吧!
使用方法可以参考Xshell,不多赘述。
minicom是UNIX系操作系统下的的首选伪终端软件,虽然CuteCom和Qcom等也很不错,但是相比较而言,我还是推荐使用minicom,因为它的用户交互体验非常简洁,是我喜欢它的主要原因。
在UNIX系操作系统下使用伪终端非常方便,使用USB转串口转接线也不需要安装驱动程序,操作系统自带了各种串口驱动,我的经历中还没有遇到过Linux下安装串口驱动这会事。
使用系统提供的包管理器在线安装minicom二进制版本是最便捷的方式,当然也可以到官网下载二进制包再安装,或者是下载源码,自己编译安装,不过使用源码安装前需要先装好GCC。
我比较喜欢使用在线安装二进制,简单方便。有关Linux软件安装方面的内容请参阅本书附录6《Linux 软件管理》。
运行和配置minicom需要管理员权限,可以使用管理员登录,或者是把普通用户加入到“/etc/sudoers”中,运行minicom时在前面添加命令“sudo”。有关Linux用户管理的更多内容请参阅本书附录5《Linux用户管理》。本例示例如下:
管理员用户配置minicom参数:
#minicom -s
普通用户配置minicom参数:
%sudo minicom -s
如图05-50所示。
图05-50 minicom参数设置界面,串口参数设置入口
选中“Serial Port Setup”回车,进入串口参数设置界面。
需要设置的项有A,E,F,G等,设置界面如图05-51所示。
图05-51 minicom串口参数设置界面
A,Serial Device,串口设备,如果使用本机的串口,设备名称一般是/dev/ttyS0,如果是USB转串口,设备名称一般是/dev/ttyUSB0,按字母“a”进入设置。具体的串口设备名称可以到/dev下面查看,使用命令:
#ll /dev/ | grep USB
E,Bps/Par/Bits,用来设置波特率,校验,及数据位等,按字母“e”进入设置。设置界面如图05-48所示。使用哪一个参数,直接按参数前面的字母即可。我们使用的参数是“9600”、“8”、“N”、“1”,快捷的设置方式是只按字母“c”和字母“q”,当然也可以分别设置每项参数。设置完成之后按回车退出。如图05-52所示。
图05-52 设置minicom串口参数
F,Hardware Flow Control,设置为No,按字母“f”设置。如图05-51所示。
G,Software Flow Control,设置为No,按字母“g”设置。如图05-51所示。
全部参数设置完成后,回车返回。
可以把刚才设置的参数保存为默认,也可以保存到一个文件当中。对应的选项分别是
Save setup as dfl
Save setup as..
我比较喜欢把配置保存在配置文件当中。配置文件以文本的形式保存的/etc/目录下面,以“minirc.”开头。比如我保存的配置文件名字是“niuhai.conf”,那么在/etc/目录下显示的文件名就是“minirc.niuhai.conf”。如果配置参数有变化,直接修改配置文件也是一样的。如图05-53所示。
图05-53 保存minicom配置参数到文件当中
如果保存默认,下次直接运行即可,但是如果设备号或串口参数变化后,默认配置就用不了了。运行和调用minicom也需要管理测试权限。调用示例如下:
管理员用户调用minicom命令:
#minicom
普通用户调用minicom命令:
$sudo minicom
建议将修改后的配置保存到文件中,并根据不同的设备名及串口参数保存不同的文件名。如果保存到文件,使用时执行下面的命令即可,相关的配置参数就带进来了。
#minicom <配置文件名>
比如我以niuhai用户登录到系统,上面保存的配置文件的名字是niuhai.conf,这时就可以使用的如下命令来调用:
%sudo minicom niuhai.conf
在使用的过程中,任何时候都可以通过按CTRL+A,Z来帮助、和退出程序等。如图05-54所示。
图05-54 minicom帮助
丰富的功能都在帮助界面显示出来了,重点介绍几个常用的功能。
1)Capture on/off...L 捕获文本,相当于hypertrm里的Capture Text,可将屏幕打印出的文本捕获到一个文件当中,快捷键是“Ctrl+L”;
2)Send files...S 发送文件到被管理的设备,快捷键“Ctrl+S”;
3)Receive file...R 接收从被管理设备传回的文件,快捷键“Ctrl+R”;
4)Run Scripts (Go)...G 运行脚本,快捷键“Ctrl+G”;
5)Clear Screen...C 清屏,快捷键“Ctrl+C”;
6)eXit and reset...X 退出并发送重置命令到modem,快捷键“Ctrl+X”。补充一点,minicom最初开发出来是用来连接modem用的,所以这里发送的重置指令对我们的网络设备不起作用,如果不想让它发送重置指令,可以看下下面的一个条目;
7)initialize Modem...M 重置modem的指令都是在这里设置的,快捷键“Ctrl+M”,如果在退出minicom时不想发送重置指令,可以将里面的初始化指令删除。
丰富的快捷键,所有列出来的功能都可以用快捷键来调出。如果要调用某一项功能,按下“Ctrl+这项功能后面的字母”即可,相当方便。
只要参数设置正确,极少出现问题,表现非常稳定。但是意外还是发生了。
非正常关闭minicom,会在/var/lock下创建几个文件LCK*,这几个文件会阻止minicom的运行,删掉它们就好啦。
其实是线的问题,但这一条线在其它电脑上使用是正常的,可能是在这一台电脑上接触不太好吧。这个问题相当恼火,导致此兄怀疑是操作系统问题,换了好几次系统也没有解决。什么都不说了,直接上图,图05-55:
图05-55 minicom Linux下的一次乱码
1)图片中上面的部分是解决完问题之后的正常显示,下面的乱码部分是故障重现。
2)故障的现象主要表现为部分显示乱码,按回车不换行。
3)尝试过更改各种参数,更换minicom的软件版本,甚至多次重装操作系统……
4)也怀疑过USB转串口的线,换用其他人正常使用的线还是不能解决,最终换了条串口线解决,使用一条内部只有三根线的串口线,就出现了图片中上面的部分的正常显示。
5)可是这一条串口线其他人用是没有问题的呀!问题的串口线可能是多次使用后接口接触不是太好,但是又不影响在其它电脑上使用,所以问题才造成如此大困扰。这很有可能是跟不同厂商的电脑硬件纠错的能力有关。
建议以后遇到乱码问题:1)检查串口参数;2)如果串口参数没有问题,直接换线,而不是换电脑。
Mac OS平台下一款优秀的伪终端软件。不过他并不是免费的,需要你支付一定的费用,但是确实很好用。可以下载下来试用一段时间,试用期满再付费。
乱码是生产最常见的问题,而且我们把串口连接失败和连接成功但是没有会话的交互显示也视为乱码来对待。最有可能原因有三:
1)串口参数错误;
一般来说,犯这种错误的可能性还是比较高的,但排查和处理最为方便可行。如果串口参数不正确,经常表现为串口连接会话建立失败,或者是会话建立成功,但是会话交互无法进行。
2)USB转串口转接线故障;
最常见的硬件故障,尤其是使用pl232芯片的转接线,价格便宜,但是故障率高。不推荐使用,一次现场线缆问题,就把省下来的钱成倍地补了回来。
3)串口线故障。
生产中遇到的相对比较少,用了很久的线,因为线缆老化或端接质量问题会导致这种现象。
如果出现乱码,首先检查检查串口参数;确认参数正确后,做线缆替换测试;如果条件不允许,再做换电脑测试。
生产中还遇到过同一条串口线(或USB串口转接线),在某台电脑上使用不正常,换到另外一台电脑上就可以正常使用的现象。
换线测试与换电脑测试的区别:1)换电脑测试,把这条线接到另外一台电脑上试一下;2)换线测试,再拿一条线来插到我这台电脑上试一下。
有些时候,你可能想远程console口权限,可以使用一个串口转网络的小设备+虚拟串口驱动的方式来实现。如果只是为了远程管理的话,使用SSH客户端,通过网络连接最合适做法。
个人非常不建议这种做法:
1)安全问题,console口权限是物理权限,权限非常高,生杀予夺;
2)网络稳定性影响连接质量;
3)信息不全面,往往难以有效解决问题;
4)经常还需要他人在现场协助,而且效率低;
5)除非终端设备不支持网络连接管理,否则不要使用网络转串口设备。
关于虚拟终端软件的选择,我有两点建议:
1)Windows平台首推PuTTY,其次是Xshell。虽然Xshell是收费软件,但是软件发行方也提供了免费版本。
2)Unix系平台推荐使用minicom,如果不想把Linux系统装到硬盘上,可以制作或直接使用某个发行版的USB live系统,开机时从闪盘引导就可以使用了。
如果你在使用串口时遇到任何问题,请查阅本篇文档和本书附录部分的第2篇《三种串行通信》这两篇文档,目前我所经历的所有串口连接相关的错误,都记录在这里两篇文档里了。
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。