手動安裝liux網卡驅動

 
    以D-Link530的網卡進行模塊的編譯.

    由於Linux的默認內核已經建立很多網卡驅動程序模塊,所以在編譯網卡模塊之前就要確認網卡芯片是否被支持,如果被支持,就不需要編譯模塊.

    D-Link530的網卡的芯片組是有名的via-rhine(有時也寫成viarhine),先找找有沒有這塊網卡的模塊,如果有,你的網卡已經被支持,可以跳過編譯過程,直接進行模塊的加載.

    1.先查看內核版本,因爲不同版本的模塊放置的路徑不同
      uname -r

    2.內核模塊的路徑

      cd /lib/modules/`uname -r`/kennel/drivers/net

      以上爲2.4版的路徑

      cd /lib/modules/`uname -r`/net

      以上爲2.2版的路徑

    3.查詢模塊

      ls -l via*
 
    如果自己不知道網卡被Linux檢測到,可以用以下方法來測試:

      dmesg | grep eth

    如果檢測到,就不需要編譯內核模塊.萬一檢測不到,就必須進行編譯工作了.
 
    1.下載網卡驅動程序模塊.

    2.確定存在所需要的包:由於驅動程序需要配合內核來編譯,就會用到kernel source或kernel header的數據,此外也需要編譯器的幫助,先確定Linux中是否已經存在下面的包(以Red Hat 9爲例):

      kernel-source-2.4.20-18.9
      kernel-2.4.20-18.9
      gcc-3.2.2-5
      make-3.79.1-17

     如果沒有以上的包,就要拿出光盤,將他們安裝到Linux中.
 
     注意:由於很多內核模塊默認都是由/usr/src/linux這個kernel source的目錄來取得所需信息,但偏偏目前很多的Linux都是使用/usr/src/linux-2.4這個目錄來鏈接,所以很多時候就會發現找不到文件的錯誤信息. 因此,可以使用下面的方式來鏈接目錄:

      cd /usr/src
      ln -s linux-2.4.20-18.9 linux 
 
     3.編譯下載的模塊

       下載完整的驅動程序源代碼,如文件名爲:dlkfet-4.24.tar.gz
        1.將取得的文件放置到/tmp下,並解壓文件
          cp dlkfet-4.24.tar.gz /tmp
          cd tmp
          tar -zxvf dlkfet-4.24.tar.gz
          cd dlkfet-4.24

        2.開始編譯

          make

    會產生一個文件模塊:rhinefet.o,將它移動到模塊放置的目錄後,執行depmod -a即可.

          cp rhinefet.o /lib/modules/`uname -r`/kennel/drivers/net
          depmod -a

      4.模塊測試

        內核模塊編譯完成後,就要測試能否正常運行,因爲我們已經運行depmod -a,所以直接以modprobe進行模塊的加載.

        1.加載模塊測試

        modprobe rhinefet.o

        注意,不要寫完整的名稱,.o不需要寫.rhinefet就是剛剛編譯出來的rhinefet.o.

        lsmod

        2.設置開機加載摸塊

        就是編輯/etc/modules.conf
        vi /etc/modules.conf

        在文件中加入下面一行:

        alias eth0 rhinefet

        3.重新啓動,看是否正常啓動模塊

        sync;sync;reboot

    上面我們使用的是rhinefet模塊,如果不是這個名稱,就請依你的實際情況來修改.接下來就是測試這個網卡是否正常工作.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章