使用者工具

網站工具


tech:p5gc_mx_linuxdrv

Asus P5GC-MX/1333 安裝 CentOS Linux 網卡 Driver

  • Attansic L2 並不是 Giga 網卡, 只是 10/100 網卡
  • 說真的如果這片主機板是要安裝 CentOS, 而且還會常常更新 Linux Kernel, 建議還是另外找一片預設有支援的網卡比較方便, 否則每次更新 kernel 之後就要重新 compile atl2 driver..

安裝程序

  • 確定可以在 CentOS 4 compile 成功的 atl2 Driver : l2-linux-v1.0.40.4
  • 如果是在 CentOS 5 必須將 kcompat.h 的 1084 行移除,否則就會出現這樣的錯誤訊息
    /tmp/l2-linux-v1.0.40.4/src/kcompat.h:1084: 錯誤:「irq_handler_t」 重定義
    include/linux/interrupt.h:67: 錯誤:「irq_handler_t」 的上一個宣告在此
    make[2]: *** [/tmp/l2-linux-v1.0.40.4/src/at_main.o] Error 1

    ,主要原因是 1083 - 1085 定義

    #if (!(( RHEL_VERSION == 4 ) && ( RHEL_UPDATE >= 5 )))
    /* typedef irqreturn_t (*irq_handler_t)(int, void*, struct pt_regs *); */
    #endif
su - root
export LANG=C
cd p5gc-mx_netcard/
wget https://www.ichiayi.com/wiki_file/l2-linux-v1.0.40.4.tar.gz
tar -zxvf l2-linux-v1.0.40.4.tar.gz
cd l2-linux-v1.0.40.4
cd src
make
make install
rmmod atl2.ko  <-- 如果已經有安裝過 atl2
insmod atl2.ko
modprobe atl2
lsmod | grep atl2 <-- 確認是否有安裝完成
service network restart
  • 因為我還安裝 D-Link DGE-530T 網卡, 對於 eth0 / eth1 的設定亂跳也感到很困擾, 目前的解決方法說明如下:

  • 設定 /etc/modprobe.conf
alias eth0 atl2
alias eth1 sk98lin
:
  • 設定 /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=220.130.131.xxx
NETMASK=255.255.255.0
HWADDR=00:13:74:00:5C:38
  • 設定 /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.11.251
NETMASK=255.255.255.0
HWADDR=00:11:95:F2:CF:47
  • 只有指定 /etc/modprobe.conf 內的 alias ethx 並無法正確指定哪張網卡擔任 eth0 或 eth1
  • 透過 /etc/sysconfig/network-scripts/ifcfg-ethx 內的 HWADDR 指定 mac 就可正確決定 eth0 或 eth1

參考資料

tech/p5gc_mx_linuxdrv.txt · 上一次變更: 2018/05/20 15:04 由 Jonathan Tsai