岁月联盟 · 中国技术网 本站主页 | 安全认证 | 用户服务 | 技术论坛
新闻快报 | 新手学堂 | 黑客特区 | 程序语言 | 数 据 库 | 防 火 墙 | 路由交换 | 系统集成 | 服 务 器 | 存储备份 | 考试认证
Windows | Linux | Java | 协议分析 | 问题解答 | 进程大全 | 网页设计 | 多 媒 体 | 图库资料 | 软件下载 | 站内下载
  您现在的位置: 岁月联盟 >> Linux频道 >> 系统管理 >> 系统管理 >> Linux频道正文
Linux系统中如何设置串口多用户卡
作者:未知 文章来源:本站整理 点击数: 更新时间:2007-12-18 17:21:49

  操作系统: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:


  • 上一个Linux频道:
  • 下一个Linux频道: 没有了
  •  
    热门文章
    推荐文章
    关于我们 | 发展历程 | 网站地图 | 广告服务 | 招贤纳士 | 战略合作 | 友情链接 | 著作声明 | 联系我们
    Copyright © 2002-2007 SYUE All rights reserved.
    E_mail:Admin@Syue.Com 皖ICP备05004589号
    未经授权禁止转载、摘编、复制或建立镜像.如有违反,追究法律责任.
    天龙八部私服 传世私服 传奇世界私服 传奇私服 bet365 天龙八部私服 热血江湖私服 英雄合击传奇私服 热血江湖私服 bet365 bet365