当前位置:Linux教程 - Linux - 瘟猫和Linux配置实作指南(一)

瘟猫和Linux配置实作指南(一)

作者︰Alexandre J. alexandre12@mageos.com
译者:梁昌泰 linuxrat@gnuchina.org,李超 lich1@263.net
v1.0, April 2000 翻译日期︰2000年07月15日


--------------------------------------------------------------------------------
本文档向用户讲授如何在Linux下让瘟猫(Winmodem)运转起来。
--------------------------------------------------------------------------------


1. 瘟猫是什么东东?
1.1 它们是猫......
1.2 ...但是跟真正的猫并不一样!
1.3 我怎么知道我拿的是瘟猫?

2. 是ISA还是PCI?
2.1 PCI ?
2.2 难道是ISA的?

3. 安装猫的驱动程序
3.1 LT牌瘟猫(来自朗讯科技Lucent)
3.2 LTMODEM程序(开源的驱动程序)

4. 结束...
4.1 版权协议,版权所有
4.2 联系信息
4.3 资源


1. 瘟猫是什么东东?

1.1 它们是猫......
一只瘟猫,和其它的猫一样,是用来访问电话服务的,比如BBS、英特网、语音电话、传真等等。它通过电话线连接并由速度决定其特性.如果您很想学习猫的更多知识,我建议您阅读Modems-HOWTO。

1.2 ...但是跟真正的猫并不一样!
它们是“瘟”猫(WINmodem)!也就是说,它们依赖于Windows操作系统才能工作!为什么呢?很简单,因为它们太土鳖!它们需要特定的软件和驱动程序协同起来才能完成完整的任务。所谓的特定软件指的就是操作系统,随猫所提供的驱动程序99%的程度是只有为微软视窗系统平台独家提供的。但是随着Linux的民主化/大众化(democratization),一些生产厂家,比如朗讯科技(LT)、摩托罗拉(Motorola)等,决定为她们自行研制生产的猫们开发Linux下的驱动程序。但是她们并不了解Linux的哲学:她们提供的驱动程序是能够正常工作的,而她们的驱动程序却是“闭源”(Closed Source)的!她们是free的,这里的free指的是价格上的“免费”,而不是GPL条款所指的“自由”!也就是说这些驱动程序的源代码不公开给大众。

所以,一些“黑客”/“电脑玩家”决定编写一个开源(Open Source)的驱动程序,但是他们并不十分了解手中的猫的技术细节,因为生产厂商不愿意泄露的猫的技术细节。也正因为如此,开源的猫驱动程序往往是alpha或者beta版本的。

1.3 我怎么知道我拿的是瘟猫?
1. 看看您的猫连接的串口的名称(举例说,在Windows或者MSDOS就是COM1、COM2、...等等)。

在Linux下,您的猫的名称是/dev/ttySx。此处的x是在DOS下的串口号数字减一。比如,在DOS下的COM1,在Linux是ttySx,这里的x=1-1=0,所以是ttyS0。

第二例:在DOS下面是COM3,在Linux下面则是ttyS2。

其它的依此类推。


2. 给/dev/ttySx做一个名为/dev/modem的符号连接。需要执行的命令是:


--------------------------------------------------------------------------------

rm -f /dev/modem

ln -s /dev/ttySx /dev/modem


--------------------------------------------------------------------------------

3. 下载并安装minicom软件包。接着运行''minicom -s''。

选择''Serial Port Setup''(串口设置),键入''A''来设定''Serial Device(''串口设备),删除所有的行,并输入''/dev/modem''。接着请按[Enter]回车键确认。按[Esc]键,并选择''save setup as dfl”,然后选择''Exit''(退出)。

请等待一会儿,然后输入''AT''。如果您的猫回应''OK'',那么您的猫不是一只瘟猫,而是一只标准的猫!

如果初始化时间太长,那么您的猫应该是一只瘟猫。请仔细阅读本文档,让它能跑起来。请以root根用户登录。


4. 请按CTRL+A然后X退出Minicom操作环境。

2. 是ISA还是PCI?

2.1 PCI ?
嗯,知道了,我们现在知道我们的猫是一只瘟猫了。但是瘟猫有两种类型:ISA或是PCI的。可恶的厂商们为了让事情变得更糟糕,故意把两种接口做的非常不同。所以,现在我们就要测试一下我们的猫是PCI的还是ISA的。首先,必须要配置一把内核。在make *config的过程当中,必须对下列问题回答''yes'':



在Loadable module support(可加载模块支持)部分:''Enable loadable module support (CONFIG_MODULES)''(激活可加载模块支持),及 ''Set version information on all modules for symbols (CONFIG_MODVERSIONS)''(切记必须已经安装了modutils模块工具软件包﹔请参阅Kerneld-HOWTO)
在General setup部分:
''PCI support'' (CONFIG_PCI)

在''PCI Access Mode'' (CONFIG_PCI_GOBIOS)处选择''Any''

''PCI quirks'' (CONFIG_PCI_QUIRKS)

''Backward compatible /proc/pci'' (CONFIG_PCI_OLD_PROC)


在Filesystems部分
''/proc filesystem support'' (CONFIG_PROC_FS)


如果您从未重编译过内核,可能您使用的发行套件的内核就已经包含这些东西。如果想重编译内核,而且您还从未干过这样的事情,请参阅Kernel-HOWTO.

现在,我们假定您的新内核已经安装妥当。


现在请运行''cat /proc/pci''命令。如果您在命令行返回的结果当中看到了您的猫的名字,那么您的猫是PCI瘟猫。请跳至''安装驱动程序''一节



2.2 难道是ISA的?
如果您还没有找到您的猫,很有可能您拿到的是一只ISA的猫。怎么确定是ISA猫呢?

ISA的支持在内核是不考虑直接支持的(2.4.*系列内核会考虑,但是目前它还是不够稳定的)。这里有一个第三方的软件,名字就叫isapnp,是用来检测ISA设备的。首先您必须确认您已经安装了该软件包。如果还没有安装,也可以通过下载isapnptools软件包来解决。

一旦isapnptools已经安装好,我们先运行一个特定程序,叫pnpdump。它可以检测您的电脑系统,从中寻找出ISA设备来。在运行当中,程序试图检测设备所使用的资源并将这些资源打印到文件/etc/isapnp.conf当中。然后,您需要编辑该文件并执行另外一个程序isapnp。该程序会读取isapnp.conf文件并自动配置您的设备。


嗯?听起来很难么?那就走一走以下的步骤吧:


1. 请执行''pnpdump > /etc/isapnp.conf''。

2. 请使用您最喜欢的文本编辑器来编辑该文件。

3. 定位到描述您的猫的节段部分。

4. 去掉文件当中的某些行列的注释(就是去掉行首的#号啦)。您得:

1 line ''(IO 0 ...)''

1 line ''(INT 0 ...)''

1 line ''(DMA 0 ...)''

1 line ''(DMA 1 ...)''

1 line ''(IO 1...)''

5. 请删除掉所有未注解IO行当中的''(CHECK)''

6. 请执行''isapnp /etc/isapnp.conf''。如果提示有错,请根据您得到的错误信息,编辑文件isapnp.conf并变更参数。如果没有错误提示,编辑文件isapnp.conf并解除描述您的猫的节段部分的''(ACT Y)''行注释。然后再执行''isapnp /etc/isapnp.conf'',系统会提示您"" [[Name of your modem]] Enabled OK""

7. 请把''isapnp /etc/isapnp.conf''添加到您的/etc/rc.d/rc.local当中,方法是输入 ''echo ""isapnp /etc/isapnp.conf"" >> /etc/rc.d/rc.local''。在每一次的系统启动的设备自动配置时,这会起到很大作用。