Linux下新手装网卡指南

  本文主要面对新新手不对任何高难度问题进行讨论包括双网卡正常编译了driver也不能用的古怪网卡等本文的主要目的是告诉新新手Linux下网卡是怎样被驱动的本文不讨论安装Linux的问题假设用户已经成功安Linux就等驱动网卡      第一步不要再问Linux下能够装XXX卡么? 这样的问题Linux是个开放的系统借助于网络上无数的高手几乎所有的硬件都能找到支持     首先需要指出Linux下对网卡的支持往往是只对芯片的所以对某些不是很著名的网卡往往需要知道它的芯片型号以配置Linux比如我的Accton 网卡就不存在Linux的driver但是因为它是NE兼容所以把它当NE就可以在Linux下用了所以当你有一块网卡不能用在找Linux的driver之前一定搞清楚这个网卡用的什么芯片跟谁兼容比如cneetherexpress等等这样的型号一般都在网卡上最大的一快芯片上印着抄下来就是了      最普遍使用也许是最好配的网卡也许就是Ne兼容卡了我用它来作例子注意实际上很多廉价卡都是NE兼容的     对于NE卡先要作的一件事情是将网卡设定为Jumpless模式很多现在的网卡缺省都是PnP模式这在下的确能减少很多麻烦但是Linux不支持所以Linux下必须是Jumpless模式一般所有程序将网卡设为Jumpless当然如果是老卡本来就不是PnP不用管这个注意这里主要是ISA的NE关于PCI的NE需要另外设置       下来就是得弄清楚网卡的IO地址和IRQ这是两个非常重要的网卡驱动参数这个最简单就是还用那个网卡的设定程序设定完Jumpless之后肯定有地方可以软设定IO和IRQ老一些的卡得跳线道理一样另外一个方法是如果网卡能在或NT下工作去下的control panel里看这个卡的properities查IO和IRQ     OK到现在你知道了你的卡是NE兼容知道了它是在Jumpless模式下知道了IO地址和IRQ就可以安装了       Linux系统与这些系统不同的一点是它是运行在内核上的所谓内核就是把系统最核心的部分孤立出来编程将各种驱动程序内存控制等部分编在一起于不同Linux得内核是公开的经常更新的这样不需要更新整个系统用户只需要把最新的内核原程序download下来编译就可以得到一个支持更多硬件更多文件系统更安全的系统了所以需要指出Linux的Driver很少有象下那样是安装的Linux下的driver大多数都是以C程序形式发布或者在内核里或者需要用户自己修改内核代码总之要让Driver运行得重新配置编译内核如何操作Linux内核是学习Linux中非常重要的一节Linux的新手最好在这里多下点功夫搞清楚有关核心的问题建议看Linux How To文档中的kernel How to     AnywayLinux已经装好了那么用的是什么内核呢?一般缺省的Linux内核是从安装盘上来的那个内核一般包括大多数硬件的驱动程序比如Ne卡所以未一定要重新编译内核也许现有的内核就可以驱动所以下一步就是把网卡插入计算机看看Linux能否发现它这可以从Linux的启动画面中看出来如果你发现如下的一行       eth:NE card found at x using IRQ   那就说明Linux发现了NE卡在IO IRQ 的地方       如果Linux没有发现你的网卡但是你确认你网卡得型号和参数比如我的网卡是NE兼容IO xIRQ 那么可以修改Linux启动文件专门搜索这个设备这个文件在/etc/rcd/rcmodules里对于NE是这样的       #/sbin/modprobe ne io=x # NE at x   将最前面的#号去掉再启动机器试试     另外该文件里还可以发现对其它系列网卡比如C系列的autoprobe      OK到现在启动屏幕上也没有出现      eth:NE card found at x using IRQ   这样的好消息那么你就得编译内核了     编译内核之前一定要搞清楚的是网卡的芯片号比如我有一块SMC的网卡但是我是无法在Linux的内核配置菜单里找到SMC这样的字样的Linux不是win有那么长一串厂商牌号等我在这个SMC的卡上找到了digital AE的字眼于是我知道这个卡用的是DEC AE芯片于是按照这个寻找就找到了驱动      知道了芯片类型或者兼容类型(比如ne)就可以开始编译内核了具体的针对不同系统的内核编译推荐先看看有关内核编译的文章这里不多作介绍      进入/usr/src/linux      运行make menuconfig进入菜单配置内核找到Network Device Support选则EtherNet再选则相应的芯片号如果是ISA系线的NE就选则other ISA cards选则NE/NE ISA support如果是PCI的网卡就选则PCI ethernet adapters注意PCI卡未必都能这样驱动很多都不行得另外找driver比如Intel PCI EtherExpress Pro 等     有关其它选项希望能多自己摸索多看看help和howto     配置完内核后运行make dep;make;make zlilo就可以了如果内核选项过多会出现过大的情况而无法安装那么需要把一些不必要的驱动去掉      一般这样之后再启动就可以发现网卡了驱动了网卡下一步就是设定TCP/IP这些东西这就不是这里的内容了      我的经验Linux下NE兼容卡都比较好设c系列的卡也都有支持至于其它卡比如我的DEC 就麻烦很多     另外有些卡即使用某种芯片也未必就能用这个芯片的驱动这种情况就是有驱动程序也不能用就需要上网查了     有关Intel Etherexpress系列卡的配置Linux内核中有Etherexpress 的支持但没有其它卡的driver在http://cesdisgsfcnasagov/linux/drivers/eeprohtml里有关于EtherExpress B pro的讨论在那里可以download到一个c源码的驱动程序编译进内核就可以了      那么如果以上都试过了而你的网卡的确还是不能认那么你需要上网查driver了在网上查东西是一门看起来简单实际上极体现经验的学问建议寻找Linux网卡的driver从http://cesdisgsfcnasagov/linux/drivers/开始在那里可以发现的针对网卡得驱动有    DEC DC** Tulip chip based cards   Com PCI Etherlink PCI and EISA cards   Intel EtherExpress ProB Pro+ and Pro+ PCI   c ISA Fast Etherlink card   SMC EtherPower II (EPIC/ c chip) driver   RealTek RTL/ driver   LiteOn lcc PNIC driver (now merged with the Tulip driver)   Macronix MX and ASIX experimental drivers are now merged with the Tulip driver)   VIA Rhine (VTCA and ) driver (now released)   Winbond wc driver (beta test) Note: this driver was written without official documentation   TI ThunderLAN driver (external link Caldera/James Banks)   Hewlett Packard VG driver updates (external link Yaroslav)

  Intel EtherExpress Pro/ PCI driver (remote link)   c/c/c ISA/MCA/EISA EtherLink III driver update The driver now detects multiple cards when loaded as a module   AMD LANCE/PCnet driver update The driver is now usable as a loadable module   Cirrus/Crystal/IBM CS series driver (remote link)   PCI NE driver (local page)   PCI NE updates (remote link)

  Intel Etherexpress Pro   DEC X* based board   Com EtherLink III PCI/EISA (c cccc c)   Intel EtherExpress Pro/ PCI With i Chip)   TI ThunderLan   PCI NE   Packet Engines Yellowfin GNIC   SMC EtherPower II (EPIC/ c chip)   RealTek RTL/

  同时还有一个Ecom EtherLink III family 的setup程序没有用过也许不错     如果这里你还是没有找到相应的网卡驱动那么就去search了我推荐的方法是上Internet Newsgroup查因为你绝对不是第一个在Linux下用这个网卡的人你的问题绝对有人在网络上问过而且有人回答过那么问题就是如何找到他最简单的方法是打开netscape 到wwwdejanewscom去这里的关键是关键字的选则比如我有个卡的芯片是DEC的那么我考虑到已经是个长数字于是输入 linux来搜索这里Linux是必须的否则看到上千篇关于 win的驱动问题是不是很烦?结果 linux很快就找到了有关文章     如果这样也找不到驱动程序或者有了驱动程序不知道怎么用用了出问题再来版上问记得把具体的网卡型号芯片型号你作过什么努力什么问题等都写清楚以便于他人帮助

最困难之时,就是我们离成功不远之日。

Linux下新手装网卡指南

相关文章:

你感兴趣的文章:

标签云: