一般來說,目前新版的 linux 預(yù)設(shè)可以支持的網(wǎng)絡(luò)卡芯片組數(shù)量已經(jīng)很完備了,很多網(wǎng)絡(luò)卡芯片都已經(jīng)被支持, 例如rlt 8139 芯片 ( realtek 8139 ) 的網(wǎng)絡(luò)卡所以使用者可以很輕易的設(shè)定好他們的網(wǎng)絡(luò)卡。 不過,如果萬一不幸核心沒有支持該網(wǎng)絡(luò)卡的話,那么可以透過重新編譯核心或者編譯網(wǎng)絡(luò)卡驅(qū)動模塊 ( modules ), 并且加載該模塊,今天就是這么巧,碰到一個(gè)d-link 的dfe-530tx,沒法,只有手動安裝網(wǎng)絡(luò)卡驅(qū)動程序了. 可以用命令# dmesg | grep eth 來查看系統(tǒng)啟動信息,顯示出 eth0 或者 eth1 的信息,如果eth1沒找到正確的信息,那就表示 linux 無法找到該硬件, eth0是8139的,已經(jīng)顯示正常,例如: [root@kindgeorge root]# dmesg | grep eth eth0: realtek rtl8139 fast ethernet at 0xf0160000, 00:0a:a6:30:0d:0e, irq 11 eth0: identified 8139 chip type "rtl-8139c" eth0: setting 10mbps full-duplex based on auto-negotiated partner ability 4061. 一. 查看自己系統(tǒng)的內(nèi)核版本. [root@kindgeorge root]# uname -r 2.4.18-3 我這里是redhat7.3的,內(nèi)核2.4.18-3 一般來說,這個(gè)內(nèi)核驅(qū)動程序的模塊會放在 /lib/modules/2.4.18-3/kernel/drivers/net 二.確定系統(tǒng)是否已經(jīng)安裝下面包 1.由于編譯需要用到內(nèi)核的源代碼包和編譯程序gcc.所以如果沒有的話,要先裝. 查看: [root@kindgeorge root]# rpm -qa|grep kernel kernel-2.4.18-3 kernel-source-2.4.18-3 [root@kindgeorge root]# rpm -qa|grep gcc (gcc是編譯用) gcc-2.96-110 gcc-g77-2.96-110 gcc-c++-2.96-110 一般裝了內(nèi)核源包的話,都會在出現(xiàn)/usr/src/linux-2.4,同路徑下會有l(wèi)inux-2.4.18-3的文件實(shí)際目錄. 2.如果沒有的話,就用原來安裝盤上的文件安裝,會去下載個(gè)相同內(nèi)核源包安裝吧 rpm -ivh kernel-source-2.4.18-3.i386.rpm ...... 三. 取得驅(qū)動程序和編譯 1. 可以重廠家提供的光盤提供,把光盤上的linux目錄下的dlkfet-4.24.tar.gz 拷貝過來用. 2. 從網(wǎng)上下載網(wǎng)絡(luò)卡驅(qū)動程序,一般廠家的網(wǎng)站都提供下載程序的. 例如: http://www.d-link.com.cn 上有下載. [root@kindgeorge root]# cp dlkfet-4.24.tar.gz /usr/src [root@kindgeorge root]# cd /usr/src/ [root@kindgeorge src]# tar -zxvf dlkfet-4.24.tar.gz dlkfet-4.24/ dlkfet-4.24/rhine_main.c dlkfet-4.24/makefile dlkfet-4.24/vmns_drv.h dlkfet-4.24/rhine.h dlkfet-4.24/.depend.mak dlkfet-4.24/rhine_vmns.c dlkfet-4.24/rhine_proc.h dlkfet-4.24/rhine_proc.c dlkfet-4.24/rhine_vmns.h dlkfet-4.24/kcompat.h dlkfet-4.24/rhine_cfg.h dlkfet-4.24/.depend dlkfet-4.24/rhine_wol.c dlkfet-4.24/rhine_wol.h dlkfet-4.24/linux.txt 3.請留意一開始是沒有.o文件的. 我們編譯前可以看看目錄的linux.txt,是一個(gè)包含介紹安裝說明.在進(jìn)入目錄后,執(zhí)行make進(jìn)行編譯. [root@kindgeorge src]# cd dlkfet-4.24 [root@kindgeorge dlkfet-4.24]# make [root@kindgeorge dlkfet-4.24]# ll (編譯后查看一下) total 320 -rw-r--r-- 1 root root 7473 jan 15 2003 kcompat.h -rw-r--r-- 1 root root 11491 jan 20 2003 linux.txt -rw-r--r-- 1 root root 5219 dec 10 2002 makefile -rw-r--r-- 1 root root 1818 jan 16 2003 rhine_cfg.h -rw-r--r-- 1 root root 48715 may 24 18:31 rhinefet.o -rw-r--r-- 1 root root 42044 jan 15 2003 rhine.h -rw-r--r-- 1 root root 78996 jan 16 2003 rhine_main.c -rw-r--r-- 1 root root 32760 may 24 18:31 rhine_main.o -rw-r--r-- 1 root root 14980 jan 15 2003 rhine_proc.c -rw-r--r-- 1 root root 1672 jan 15 2003 rhine_proc.h -rw-r--r-- 1 root root 12336 may 24 18:31 rhine_proc.o -rw-r--r-- 1 root root 9172 jan 15 2003 rhine_vmns.c -rw-r--r-- 1 root root 1106 jan 15 2003 rhine_vmns.h -rw-r--r-- 1 root root 3792 may 24 18:31 rhine_vmns.o -rw-r--r-- 1 root root 7536 jan 15 2003 rhine_wol.c -rw-r--r-- 1 root root 1529 jan 15 2003 rhine_wol.h -rw-r--r-- 1 root root 3488 may 24 18:31 rhine_wol.o -rw-r--r-- 1 root root 6824 jan 15 2003 vmns_drv.h 4.經(jīng)過編譯后,會編譯出一個(gè)rhinefet.o 文件,這個(gè)就是驅(qū)動模塊,我們把它拷貝到相應(yīng)地方: [root@kindgeorge dlkfet-4.24]#cp rhinefet.o /lib/modules/2.4.18-3/kernel/drivers/net [root@kindgeorge dlkfet-4.24]# depmod -a 5.測試 (1)可以用命令modprobe rhinefet 或 insmod rhinefet.o 加載.如果沒出錯(cuò)信息說明ok. (2) 用命令lsmod 可以看看是否已經(jīng)加載了. [root@kindgeorge dlkfet-4.24]# lsmod module |