当前位置:操作系统 > Unix/Linux >>

Linux系统中如何设置串口多用户卡

操作系统:RedHat 6.1

  硬件:串口多用户卡

  串口多用户卡一般都有跳线可供选择(阅读说明书).

  我对一个八口的多用户卡的跳线设置为:

  IRQ=3

  I/O=0190,0198,01a0,01a8,01b0,01b8,01c0,01c8(十六进制)共八个I/O端口

  多用户卡的晶片类型:16550A

  /*不同的多用户卡的晶片类型可能不同*/

  过程:由于涉及设置,以下的操作由root用户完成.

  一.因为多用卡的中断是3,所以要删去ttyS1(COM1)和ttyS3(COM4).

  1. #cd /dev

  2. #./MAKEDEV -d ttyS1

  3. #./MAKEDEV -d ttyS3

  二.生成串口设备.

  1. #cd /dev

  2. #./MAKEDEV ttyS11

  3. #./MAKEDEV ttyS12

  4. #./MAKEDEV ttyS13

  5. #./MAKEDEV ttyS14

  6. #./MAKEDEV ttyS15

  7. #./MAKEDEV ttyS16

  8. #./MAKEDEV ttyS17

  9. #./MAKEDEV ttyS18

  /*选择这样的串口设备是我的喜好,您可以选择ttyS[0..63]范围的串口设备*/

  三.设置串口设备对应多用户卡的串口

  1. #/bin/setserial /dev/ttyS11 port 0x0190 irq 3 uart 16550A

  /*设置/dev/ttyS11i为对应多用户卡的第一个串口,以下依此类推*/

  /*如果没有setserial工具,就安装它.RH6.1的缺省安装就已有此工具了*/

  2. #/bin/setserial /dev/ttyS12 port 0x0198 irq 3 uart 16550A

  3. #/bin/setserial /dev/ttyS13 port 0x01a0 irq 3 uart 16550A

  4. #/bin/setserial /dev/ttyS14 port 0x01a8 irq 3 uart 16550A

  5. #/bin/setserial /dev/ttyS15 port 0x01b0 irq 3 uart 16550A

  6. #/bin/setserial /dev/ttyS16 port 0x01b8 irq 3 uart 16550A

  7. #/bin/setserial /dev/ttyS17 port 0x01c0 irq 3 uart 16550A

  8. #/bin/setserial /dev/ttyS18 port 0x01c8 irq 3 uart 16550A

  四.编缉/etc/inittab文件

  1. 在文件/etc/inittab增多以下几行:

  11:2345:respawn:/sbin/mingetty ttyS11

  12:2345:respawn:/sbin/mingetty ttyS12

  13:2345:respawn:/sbin/mingetty ttyS13

  14:2345:respawn:/sbin/mingetty ttyS14

  15:2345:respawn:/sbin/mingetty ttyS15

  16:2345:respawn:/sbin/mingetty ttyS16

  17:2345:respawn:/sbin/mingetty ttyS17

  18:2345:respawn:/sbin/mingetty ttyS18

  /*每行开头的号码(如11等)视您的机器设置而定*/

  2. #init q /*使以上增加的几行生效*/

  至此,已完成了串口多用户卡的设置.接上终端,就可见到盼望已久的login状态!

  另外,如果想每次一开完机,就能使用串口卡,可以将第三步编缉成shell文件,放在/etc/rc.d/init.d下,然后在/etc/rc.d/rc3.d造个软连接,步骤如下:

  1. #cd /etc/rc.d/init.d

  2. #vi ttyS

  //文件名随您选

  增加第三步的几行:

  /bin/setserial /dev/ttyS11 port 0x0190 irq 3 uart 16550A

  /bin/setserial /dev/ttyS12 port 0x0198 irq 3 uart 16550A

  /bin/setserial /dev/ttyS13 port 0x01a0 irq 3 uart 16550A

  /bin/setserial /dev/ttyS14 port 0x01a8 irq 3 uart 16550A

  /bin/setserial /dev/ttyS15 port 0x01b0 irq 3 uart 16550A

  /bin/setserial /dev/ttyS16 port 0x01b8 irq 3 uart 16550A

  /bin/setserial /dev/ttyS17 port 0x01c0 irq 3 uart 16550A

  /bin/setserial /dev/ttyS18 port 0x01c8 irq 3 uart 16550A

  存盘退出

  3. #chmod +x ttyS

  /*使ttyS可执行*/

  4. #cd /etc/rc.d/rc3.d

  //这是进入字符状态多用户模式,如果一开机就进入//XWindows模式,应选择路径 /etc/rc.d/rc5.d

  5. #ln -s ../init.d/ttyS S99ttyS //您可以选另外一个连接文件名

  //以上是我的做法,当然很多人将上面几行setserial内容增加在/etc/rc.d/rc.local

  //的尾部,就更简单了。

  如果你想知道你所用的终端是哪一个串口设备,可编缉/etc/rc.d/rc.local,在它的一行中增加(\l):

  1. #vi /etc/rc.d/rc.local

  找到一行:

  echo "Kernel $(uname -r) on $a $SMP$(uname -m)" >> /etc/issue

  增加(\l),上面一行变成:

  echo "Kernel $(uname -r) on $a $SMP$(uname -m) (\l)" >> /etc/issue那么,你就能在终端上见到象这样的login状态:

  ......................

  .................... (ttyS11)

  ............ login:

  

上一个:对PPPServer拨号用户进行身份验证
下一个:Linux下的各种有效的备份方法汇总

更多Unix/Linux疑问解答:
路由原理介绍
子网掩码快速算法
改变网络接口的速度和协商方式的工具miitool和ethtool
Loopback口的作用汇总
OSPF的童话
增强的ACL修改功能
三层交换机和路由器的比较
用三层交换机组建校园网
4到7层交换识别内容
SPARC中如何安装Linux系统(2)
SPARC中如何安装Linux系统(1)
用Swatch做Linux日志分析
实战多种Linux操作系统共存
浅析Linux系统帐户的管理和审计
Linux2.6对新型CPU的支持(2)
电脑通通透
玩转网络
IE/注册表
DOS/Win9x
Windows Xp
Windows 2000
Windows 2003
Windows Vista
Windows 2008
Windows7
Unix/Linux
苹果机Mac OS
windows8
安卓/Android
Windows10
如果你遇到操作系统难题:
访问www.zzzyk.com 试试
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,