(2016-08-25 追記) 朗報:CentOS7 だとデフォルトで AX88179 を認識してくれます。
$ lsmod (略) usbnet 43956 1 ax88179_178a mii 13934 2 usbnet,ax88179_178a (略)
これで kernel 更新されたら認識しなくなってパニック、というのが無くなる。。。
※別バージョン kernel 用のカーネルモジュールをビルドする方法、だれか教えて…
以下元の文
CentOS 6.5 に AX88179 (USB 3.0 to GbE NIC) のドライバを突っ込むには(2014-04-12 時点)
USB NIC には 玄人指向の GBE-USB3.0S (aff) を使ってます。
(商品ページで使用チップがAX88179と書いてあるので助かりますねー)
kernel は 2.6.32-431.11.2.el6.x86_64 (現時点最新)
$ uname -a Linux (snip) 2.6.32-431.11.2.el6.x86_64 #1 SMP Tue Mar 25 19:59:55 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
以下 root で作業するけど勘弁ね。
まず下準備。
# yum install gcc kernel-devel (snip) Installed: kernel-devel.x86_64 0:2.6.32-431.11.2.el6 Complete! #
ASIX のサイトからドライバのソースをダウンロードする。
AX88179 - USB 3.0 to Gigabit Ethernet (GbE,GigE) | ASIX
の下の方にある、
Linux kernel 3.x/2.6.x Driver V1.9.0 2014-01-02 For Android 1.x/2.x/3.x/4.x, Linux kernel 2.6.14 and later
がドライバ。
ドライバをダウンロードして展開。
# wget http://www.asix.com.tw/FrootAttach/driver/AX88179_178A_LINUX_DRIVER_v1.9.0_SOURCE.tar.bz2 # tar jxf AX88179_178A_LINUX_DRIVER_v1.9.0_SOURCE.tar.bz2 # cd AX88179_178A_LINUX_DRIVER_v1.9.0_SOURCE
make & make install
# make make -C /lib/modules/2.6.32-431.11.2.el6.x86_64/build SUBDIRS=/root /AX88179_178A_LINUX_DRIVER_v1.9.0_SOURCE modules make[1]: ディレクトリ `/usr/src/kernels/2.6.32-431.11.2.el6.x86_64' に入ります CC [M] /root/AX88179_178A_LINUX_DRIVER_v1.9.0_SOURCE/ax88179_178a.o Building modules, stage 2. MODPOST 1 modules CC /root/AX88179_178A_LINUX_DRIVER_v1.9.0_SOURCE/ax88179_178a.mod.o LD [M] /root/AX88179_178A_LINUX_DRIVER_v1.9.0_SOURCE/ax88179_178a.ko.unsigned NO SIGN [M] /root/AX88179_178A_LINUX_DRIVER_v1.9.0_SOURCE/ax88179_178a.ko make[1]: ディレクトリ `/usr/src/kernels/2.6.32-431.11.2.el6.x86_64' から出ます # make install su -c "cp -v ax88179_178a.ko /lib/modules/2.6.32-431.11.2.el6.x86_64/kernel/drivers/net/usb && /sbin/depmod -a" `ax88179_178a.ko' -> `/lib/modules/2.6.32-431.11.2.el6.x86_64/kernel/drivers/net/usb/ax88179_178a.ko' #
実行権限をつけてやる
# chmod +x /lib/modules/2.6.32-431.11.2.el6.x86_64/kernel/drivers/net/usb/ax88179_178a.ko
#
これで AX88179 を繋げてやって認識されれば成功。(2本繋いでるので eth1 と eth2 として認識してます)
# dmesg (snip) usb 3-2: new SuperSpeed USB device number 4 using xhci_hcd usb 3-2: New USB device found, idVendor=0b95, idProduct=1790 usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 usb 3-2: Product: AX88179 usb 3-2: Manufacturer: ASIX Elec. Corp. usb 3-2: SerialNumber: 000050B66447A2 usb 3-2: configuration #1 chosen from 1 choice ASIX USB Ethernet Adapter:v1.9.0 20:19:05 Apr 12 2014 http://www.asix.com.tw usb%d: mtu 1500 ax88179_178a 3-4:1.0: eth1: register 'ax88179_178a' at usb-0000:00:14.0-4, ASIX AX88179 USB 3.0 Gigabit Ethernet, 00:50:b6:(snip) ASIX USB Ethernet Adapter:v1.9.0 20:19:05 Apr 12 2014 http://www.asix.com.tw usb%d: mtu 1500 ax88179_178a 3-2:1.0: eth2: register 'ax88179_178a' at usb-0000:00:14.0-2, ASIX AX88179 USB 3.0 Gigabit Ethernet, 00:50:b6:(snip) usbcore: registered new interface driver ax88179_178a
ifconfig で新しい ethX が拾えているのを確認しておしまい。
# ifconfig -a eth0 Link encap:Ethernet HWaddr EC:A8:6B:(snip) inet addr:192.168.0.29 Bcast:192.168.0.255 Mask:255.255.255.0 (snip) eth1 Link encap:Ethernet HWaddr 00:50:B6:(snip) BROADCAST MULTICAST MTU:1500 Metric:1 (snip) eth2 Link encap:Ethernet HWaddr 00:50:B6:(snip) BROADCAST MULTICAST MTU:1500 Metric:1 (snip) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host (snip) virbr0 Link encap:Ethernet HWaddr 52:54:00:(snip) inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0 (snip) virbr0-nic Link encap:Ethernet HWaddr 52:54:00:(snip) BROADCAST MULTICAST MTU:1500 Metric:1 (snip) #
あとはネットワーク周りの設定をご自由に。
失敗談
最初 yum install kernel-devel で最新のが入ってくれずに難儀したけど、 /etc/yum.repos.d/CentOS-Base.repo の [updates] の priority を 2 にしていたせいだった。 priority=1 にしたら kernel-devel.x86_64 0:2.6.32-431.11.2.el6 が入りましたよっと。
参考: