在 Unix系统下安装网卡是常有的事,但并不是每次都能顺利地安装成功,在安装过程中可能会遇到各种各样的问题,有可能是硬件的问题,也有可能是软件的问题。下面笔者介绍Unix 系统网卡的安装及故障排除。
1.3COM 3c509网卡
笔者曾在一台预先装有3c509 网卡的HP 机上安装SCO OpenServer 5.0.4系统,安装后发现系统根本无法启动。笔者又安装了一遍,发现问题依旧,说明在安装过程中有问题。重启系统,虽不成功但有错误信息,在仔细研究后发现有设备发生了冲突,它显示了如下信息:
%adapter 0xBC00 -- 0xBCFF 15 - type=arad hd=0 bus=0 id=7 fts=sto
%adapter 0xBC00 -- 0xBCFF 15 - type=arad hd=1 bus=0 id=7 fts=sto
%e3E 0x1000 -- 0x100F 15 - 3COM Etherlink Ⅲ unit=0
WARNING: SCSI adapter:cannot install intr vecno=15 type=2,IPL=5,vector 15 is private
G hd-config
Unexpected trap in kernel mode:
PANIC:k-trap-kernel mode trap type 0x00000E
由上可知,在安装操作系统过程中自动检测到网卡,安装网卡时按系统确认的网卡类型进行安装,安装完成后出现中断向量冲突(适配器与网卡均使用中断向量15),系统在引导内核时内核有冲突导致无法启动。出现此问题只有重装系统,而且在安装时选择不自动安装网卡。解决方法:
(1)安装操作系统
在安装操作系统时,出现“Configuring Optional Software” 屏时,将如下选项“Network card:"设为“Deferred" 而不是“Autodetect",“Network address:"设为 “No networking card configured",然后进行正常安装,系统即可安装成功。
(2)安装配置网卡
1查看Unix系统资源
重启系统后进入单用户,在“# ”符下键入“hwconfig -h"查看系统资源配置情况,系统会显示设备、I/O起始/结束地址、中断向量、DMA通道及其它相关信息,记住这些信息,特别是I/0起始地址、中断向量。
2设置网卡
启动DOS系统或Windows系统,进入MS-DOS方式,执行随网卡配备的设置软盘中的设置程序(A盘根目录下3c5x9cfg.exe文件),查看并设置网卡的I/O地址、中断向量及类型,设置的值不可与上面查看的Unix 系统资源发生冲突。
3配置网卡
重启系统后进入单用户,在“# ”符下依次选择#netconfig→Hardware→Add new adapter→系统显示
“The folling adapter have been found 3COM Etherlink Ⅲ ISA combo(3C579-COMBO EISA mode)-slot #1"时,按“TAB”键选“Configure hardware not listed aboveing",然后出现许多列表。
系统检测,将3c509网卡误认为3c579,因此不能选此网卡类型,如选,则会发生冲突。
→选“3COM Etherlink Ⅲ ISA combo(3C509-COMBO)”->修改网卡地址、中断向量及类型,具体如下: I/O address:300
Interupt vector :10
Media/cable Type: TP"
(这些值要与上面设定的要一致,且不可冲突)
→出现“HW 3COM Etherlink Ⅲ ISA combo(3c509-COMBO)”
SCO IPX/SPX
SCO TCP/IP"
时下移光标选“SCO TCP/IP",继续安装,重连内核重启系统即可成功。
笔者也曾在好几台机器上安装3c509网卡,在系统检测显示机器已有的网卡时曾显示过如下信息:“Warning !!! NO 3COM Etherlink Ⅲ ISA combo(3C509-COMBO ) found in the system that have not been configured previously",只要对此信息不管,回车继续,按照上面方法安装即可。
2.3Com 3c508网卡
由于本人具有的3Com 3c508网卡驱动程序版本较旧,3c508网卡无法在SCO OpenServer 5 系统下安装,因此现介绍一下在SCO Unix 3.2.4.2系统下的安装方法,其它网卡在SCO Unix 3.2.4.2系统下的安装也与其基本相似。
网卡在SCO Unix 3.2.4.2和SCO OpenServer 5下安装有明显不同,通过下面的安装与上面的比较即可得知。安装方法:
(1)查看Unix系统资源
重启系统后进入单用户,在“# ”符下键入“hwconfig -h"查看系统资源配置情况,系统会显示设备、I/O起始/结束地址、中断向量、DMA通道及其它相关信息,记住这些信息,特别是I/0起始地址、中断向量。
(2)设置网卡
启动DOS系统或Windows系统,进入MS-DOS方式,执行随网卡配备的设置软盘中的设置程序(A盘根目录下3c508cfg.exe文件),查看并设置网卡的I/O地址、中断向量及类型,设置的值不可与上面查看的Unix 系统资源发生冲突。
(3)制作驱动程序安装盘
由于随卡提供的盘为MS-DOS格式,因此需转换为Unix格式。转换方法为:
1在Unix系统下,插入3c508设置软盘
a. #doscp a:/scounix/508.a 508.a
将a盘上\scounix目录下508.a拷至Unix当前目录下。
b. #uudecode 508.a
将格式为ASCII码文件508.a转换为二进制压缩文件508.Z。
c. #uncompress 508.Z
将二进制压缩文件508.Z解压缩文件名为508.
2取出3c508设置软盘,插入另外一张新盘
#dd if=508 of=/dev/rfd0135ds18
至此软盘制作成功.
(4)安装网卡驱动程序
引导系统进入单用户,在“#”符下,依次执行#custom→install→选“A New Product"→选“Entire Product"→提示“Insert Distribution Floppy Volume 1"时,插入软盘→选 “Continue"开始安装网卡驱动程序,网卡驱动程序版本为 “3Com 3c508 Driver Release 1.1a…"。
(5)安装配置网卡
重启系统后进入单用户,在“# ”符下依次选择#netconfig→选1:Add a chain->选3:SCO_TCP SCO TCP/IP for unix→选列表中 “e3I0 3Com Ethernet Driver ,board 0”→出现“Add chain SCO_TCP→e3I0(y/n)”时输入y→出现“Automatically configure the 3c508 adapter(y/n/q)" 输入n→显示“Enter IRQ (3 5 7 9 10 11 12 15)[11] or ‘q’ to quit"时按回车或输入具体值(按回车表示取默认值,此处为11;输入具体值,此值为上面设置的与系统不发生冲突的值,下同。)→显示“Enter I/O base address (200:3e0)[300] or ‘q’to quit" 时按回车或输入具体I/O地址→显示“Are you using a combo adapter(3c508-Combo)?(yn)[n] or‘q’ to quit ”时,按回车→显示 “Please enter the folling information in order to configure e3I0,Enter the address of this interface"时,输入本机IP地址→显示“Enter the netmask for this interface (default;255.0.0.0):"时,此处输入子网掩码,按回车→显示“Does the interface use a broadcast address of all 1's?(y/n)(default:y)"时,此处提示是否输入广播地址,按回车→显示“Enter the broadcast address for this interface(default :0.255.255.255)", 输入广播地址,按回车→显示interface Address、Netmask、Broadcast Address的值,显示“Are these values correct?(y/n)"此时如值正确则输入y,不正确则输入n重新输入正确的值。→显示 “Enter local host name or enter q to quit[CHP06]:"时,输入主机名或按‘q’取默认值。→显示 “Configure gate way?(y/n)[n]" 时,按回车→下面提示是否增加或减少虚终端数、TCP 连接数时,均按‘q’;返回到网络配置时,也按‘q’->下面提示是否连内核、设置环境等时,均输入y。至此安装成功。
由于SCO OpenServer 5系统配备3c509网卡驱动程序,因此在SCO OpenServer 5系统下不需做上面的2、3步骤,而SCO Unix 3.2.4.2系统不配备3c508网卡驱动程序,因此必须做以上各步。凡系统不配备网卡驱动程序,均需做,不过不同的网卡上面的步骤2方法不同。
3.HP 10/100TX LAN 网卡
HP Netserver E55 GOLD 服务器主机集成一块HP 10/100TX LAN 网卡,按正常方法安装后,发现ping 自己主机正常,但ping 其它机器不行,安装方法没有问题。安装方法如下:
(1)安装网卡驱动程序
引导系统进入单用户,在“#”符下,依次执行#custom→software→install new software→From <服务器名>→Floppy Disk Drive 0→插入网卡驱动盘,回车出现“Hewlett - Packard…"→选择Install ,安装完毕退出。
(2)安装配置网卡
在单用户“#”符下,依次执行#netconfig→Hardware→Add new adapter→系统显示“HP Netserver 10/100 TX LAN Adapter PCI BUS #0,Device #6,Function #0" →出现TCP/IP配置窗口,正确配置服务器名、IP地址等后,选“OK“重连内核重启。
由于ping 自己正常,ping 其它机器不行。笔者经检测发现网线、网卡驱动程序、HUB没问题,I/O地址、中断向量等也未发生冲突。从有关网络方面的资料得知此网卡为10/100M自适应PCI网卡,数据传输速率可达到10Mbps,也可达到100Mbps,如果只需达到10Mbps,只要三类双绞线即可,如要达到100Mbps,则需五类或超五类双绞线,相应的HUB也需为10/100Mbps自适应HUB,否则达不到100Mbps,我想可能双绞线或HUB达不到要求,于是笔者将网卡速率属性由10/100M自适应改为10Mbps,发现正常。具体操作步骤如下:#netconfig→按TAB键移动光标至HW HP 10/100TX LAN Adapter… 行→Hareware→Modify hardware configuration→Advanced Options→将Deplex Speed选项的值 由Auto-Auto 改为Full Deplex -10Mbps→退出即可正常。
4.Topstar TE-3500N 网卡
Topstar TE-3500N 网卡配备一张网卡驱动盘,在盘上\sco\5.x目录存放一些在SCO Unix 5.x系统版本下安装网卡的驱动程序及其安装说明,安装说明文件为readme文件,根据此文件说明进行安装发现有一些错误,无法安装成功。过程如下:
(1)拷入驱动程序
1进入Unix系统单用户状态,如在多用户状态下可用超级用户登录执行“#init 1(或s)"即可。
2插入网卡驱动盘。
a. #cd
#doscp a:setup /setup
执行此命令提示文件不存在,说明文件所在目录不对,经查看文件在\sco\5.x目录下,因此将命令改为#doscp a:/sco/5.x/setup /setup, 命令执行成功;或将a:\sco\5.x\setup拷至a:\下,再执行上面命令即可成功。
#chmod +x /setup
b. #./setup
执行此命令,发现安装过程中有些错误,提示一些目录不存在,笔者不管此信息,按照说明继续安装,执行#netconfig命令时,发现找不到驱动程序,说明执行#./setup上一步有问题,影响驱动程序的安装。通过查看setup文件,发现setup文件不是二进制文件,而是shell文件,用vi 命令打开,发现提示/var/opt/K/SCO/lli/5.0.01/r3e目录不存在,以SCO Unix 5.0.4系统为例,通过查看SCO Unix 5.0.4系统目录,发现SCO Unix 5.0.4目录为/var/opt/K/SCO/lli/5.0.4d,而不是5.0.01目录,因此将/setup文件所有5.0.01目录改为5.0.4d,再执行./setup命令发现正常。
不同版本的系统,系统目录不同,改目录要根据系统而定。如一台装有SCO Unix 系统5.0.5的机器发现目录为5.0.5a,如果装此系统需将目录改为5.0.5a方可。
(2)安装配置网卡
依次执行:#netconfig->Hardware->Add new lan adapter ->选取列表中“RTL 8029 Ethernet Adapter Driver”->然后输入主机名、IP地址等,再重连内核重启即可。
此类网卡有一个共同的特点就是均使用Realtek RTL 8019、8029芯片,所以它们的网卡驱动程序基本是相同的,只不过安装说明有些稍微不同,为了便于在多版本下安装,在安装前需根据系统版本不同修改安装程序中的安装目录名。