Linux 版 (精华区)

发信人: clx (楚留香), 信区: Unix
标  题: Linux Serial HOWTO 中译版(14)
发信站: 紫 丁 香 (Sat Jun 27 17:18:27 1998), 转信

Linux Serial HOWTO 中译版 : 故障排除
Previous: 更进一步...
Next: 其它的资讯来源 


13. 故障排除

13.1. 我不断地收到 ``line NNN of inittab
invalid''

要确定你对你的 init 版本使用正确的文法.这里所没有的一些 init
会在 /etc/inittab 档案里使用不同的文法. 要确定你对你的 getty
版本使用正确的文法.

13.2. 当我试著拨号时,它说 ``/dev/cuaN: Device
or resource busy''

这个问题可能发生在 DCD 或 DTR 没有设定正确的时候. DCD 应该
只在真的有连线时(像是有人拨接进来)才被设定,而不是在 getty
持续监看该埠的时候. 检查并确定你的数据机正确地配置成只在真
正连线时才设定 DCD. DTR 应该在任何东西使用或监看线路时设
定,像是 getty, kermit, 或其它通讯程式.

另一个引起 ``device busy'' 错误的普遍原因是你设定你的串列埠
使用一个已经被某种其它东西使用的中断. 在每一个设备初始化的
时後,它会要求 Linux 允许它使用它的硬体中断. Linux 持续追
踪那个中断被指定给谁,而如果你的中断已经被占用,你的设备将
不能适当地初始化. 该设备真的并没有什麽办法告诉你发生的这件
事,除了当你尝试去使用它的时候,它会回应 ``device-busy'' 错
误讯息. 检查你所有的卡(串列,乙太网路,SCSI 界面等等).找
寻硬体中断冲突的地方.

13.3. 我持续接到 ``Id SN respawning too fast:
disabled for 5 minutes''

确定你的数据机有正确的配置.查看暂存器 E 和 Q. 这可能发生在
你的数据机跟 getty 沟通的时候.

确定你正确地从 /etc/inittab 呼叫 getty. 使用错误的文法或设备名
称将会引起严重的问题.

以下法检查你的 /etc/gettydefs 文法是否正确: 

     linux# getty -c /etc/gettydefs

这也可能发生在 uugetty 初使化失败时.参阅 getty 或 uugetty 仍
然无法运作 一节.

13.4. 串列设备很慢或是串列设备只能单向传送

你的硬体中断可能有冲突.确定没有硬体中断是被分享的. 检查你
所有的卡(串列卡, 乙太网路卡, SCSI 等等)确定你串列设备配的跳
接设定以及 setserial 参数是正确的. 同时检查 /proc/ioports 及
/proc/interrups 以确定是否有冲突发生.

13.5. 我的数据机在某人断线後瘫痪或是 uugetty 并没
有重新执行

这在 DTR 讯号掉下而你的数据机没有重置时会发生. 这个问题在
我身上发生的时候我看到我的 RD 跟 SD LEDs 疯狂地闪烁.你需要
让你的数据机重置. 大部份的 Hayes 相容数据机使用 &D3 来做这
件事,但是在我的 USR Courier 上,我得要设 &D2 以及 S13=1.查
阅你的数据机手册.

13.6. 我将我的终端机连到我的 PC 上,但是在我输入
签入名称之後,它就锁住不动

     如果你使用 getty: 在你的 /etc/gettydefs 项目里可能没有设 
     CLOCAL 给终端机,而且可能你用的并不是完整的 null modem
     连接线. 你需要 CLOCAL 来告诉 Linux 忽略数据机控制信号.
     它看起来像这里这样: 

          # 38400 bps Dumb Terminal entry
          DT38400# B38400 CS8 CLOCAL # B38400 SANE -ISTRIP CLOCAL #@S @L login: #DT38400

          # 19200 bps Dumb Terminal entry
          DT19200# B19200 CS8 CLOCAL # B19200 SANE -ISTRIP CLOCAL #@S @L login: #DT19200

          # 9600 bps Dumb Terminal entry
          DT9600# B9600 CS8 CLOCAL # B9600 SANE -ISTRIP CLOCAL #@S @L login: #DT9600

     接下来,用 kill 砍掉该 getty 行程这样新行程会以新的项目产
     生. 
     如果你使用 agetty: 加上 -L 旗标到你的 /etc/initab 中的 
     agetty 那行. 这会使得它忽略数据机控制信号.然後键入 init
     q 以重新执行 init. 这个项目看起来像这样: 

          s1:345:respawn:/sbin/agetty -L 9600 ttyS1 vt100

13.7. 在高速下,我的数据机漏失资料

如果你尝试在大於 38400 bps 的速率下使用你的数据机,而你并没
有 16550A UARTs 的话,你应该要将它们升级. 有关 UARTs 的说
明参阅 什麽是 UARTs? 一节.

13.8. 在系统启动时,Linux 没有依照我的配置回报串
列设备.

这是事实.Linux 在系统启动时并没有做任何的 IRQ 侦测,它只做
串列设备侦测. 所以,不要理会它所显示有关硬体中断的部份,因
为它只是假定使用标准的硬体中断. 这是因为硬体中断侦测不可
靠,而且可能被瞒骗而这样做的.

所以即使我的 ttyS2 设在 IRQ5,我仍然看到 

     Jan 23 22:25:28 misfits vmunix: tty02 at 0x03e8 (irq = 4) is a 16550A

在 Linux 启动时,你必须使用 setserial 来告诉 Linux 你所使用的
硬体中断. Linux 启动後,你可以查看 /proc/interrupts 档以了解
真正被配置的 IRQ 是什麽. 

13.9. 当我使用我的数据机叫用 Linux 机器时 rz 以及
/或是 sz 不动

如果 Linux 在你尝试传送档案时会寻找 /dev/modem 的话,查看 
/etc/profile 以及 /etc/csh.cshrc. 某些发行套件会在这些地方定义
一些别名,最著名的是 Slackware. 这些别名扰乱了 zmodem 程
式.把它们拿掉或是更正它们.

13.10. 我的萤幕印出看起来很好玩的字元

这在当你把二进位资料送往萤幕的时候会发生在虚拟控制台上,或
者有时候会发生在串列连线上. 修复这个问题的方法是输入 echo
^v^[c.因为控制字元之故,它是: 

     linux% echo <ctrl>v<esc>c

13.11. getty 或 uugetty 仍然无法运作

getty_ps 上有个 DEBUG 选项.编辑你的 /etc/conf.{uu}getty.ttySN 配置
档并加上 DEBUG=NNN. 其中 NNN 是下列的数字组合之一,根据你想
要侦测什麽错误而定: 

     D_OPT   001            option settings
     D_DEF   002            defaults file processing
     D_UTMP  004            utmp/wtmp processing
     D_INIT  010            line initialization (INIT)
     D_GTAB  020            gettytab file processing
     D_RUN   040            other runtime diagnostics
     D_RB    100            ringback debugging
     D_LOCK  200            uugetty lockfile processing
     D_SCH   400            schedule processing
     D_ALL   777            everything 

设定 DEBUG=010 是个开始的好地方.

如果你正在执行 syslogd 的话,侦错资讯将会出现在你的记录档里.
如果你没有执行 syslogd 那麽 getty 的资讯将会出现在 
/tmp/getty:ttySN 里而 uugetty 的资讯则会出现在 /tmp/uugetty:ttySN
里,而且它们也会被放到 /var/adm/getty.log 里去. 查看侦错资讯看
看发生了什麽.最可能的是,你将得要调整一些你配置档里的参
数,并且重新配置你的数据机.

你应该也去试试 mgetty.有些人在使用它时更为幸运.


Linux Serial HOWTO 中译版 : 故障排除
Previous: 更进一步...
Next: 其它的资讯来源 

--
※ 来源:.紫 丁 香 bbs.hit.edu.cn.[FROM: 202.118.244.16]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.844毫秒