2012-10-25 [長年日記]

Ubuntuをインストール

ということで続き

Logitecの3PortUSBハブ付きイーサネットアダプタ、型番がLAN-TX/U2HB3というのが落ちていたのでこれでインストールを試みる。

結局使えなかったというのも嫌なので、インストールする前に、本当に使えんのかというのを確認してみた。まずは、Ubuntu Desktopが動作している環境でUSBに挿してみると、勝手に認識してNetworkManagerで設定できるようになった。このときどういうふうに認識しているかを確認する。

$dmesg | grep usb
(中略)
[ 1553.368102] usb 1-4.4.4: >new high-speed USB device number 4 using ehci_hcd
[ 1553.489235] usb 1-4.4.4: >New USB device found, idVendor=0b95, idProduct=772a
[ 1553.489241] usb 1-4.4.4: >New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1553.489245] usb 1-4.4.4: >Product: AX88x72A
[ 1553.489249] usb 1-4.4.4: >Manufacturer: ASIX Elec. Corp.
[ 1553.489252] usb 1-4.4.4: >SerialNumber: 22xxxx
[ 1554.025251] asix 1-4.4.4:1.0: >eth1: register 'asix' at usb-0000:00:1d.7-4.4.4, ASIX AX88772 USB 2.0 Ethernet, 00:01:8e:xx:xx:xx
[ 1554.025889] usbcore: registered new interface driver asix

ということで、ASIXのAX88x72Aというチップが使われていて、asix.koで動いていることが判明。VID,PIDはそれぞれ、0x0b95,0x772a。

次に、MinimalCDにasixドライバが含まれているかを確認。インストールしたいバージョンをダウンロードし、適当な場所にマウントする。

#mkdir /mnt/iso
#mount -o loop /path/to/mini.iso /mnt/iso

マウントした中身のinitrd.gzがインストール環境のルートなのでこれを適当な場所にコピーして展開。

$mkdir ~/initrd
$cp /mnt/iso/initrd.gz ~/initrd
$cd ~/initrd
$gunzip -c | cpio -i

この中にasix.koが含まれているかを検索。

$find . -name asix.ko
./lib/modules/3.5.0-17-generic/kernel/drivers/net/usb/asix.ko

modinfoで確認。

$modinfo  ./lib/modules/3.5.0-17-generic/kernel/drivers/net/usb/asix.ko
license:        GPL
description:    ASIX AX8817X based USB 2.0 Ethernet Devices
version:        22-Dec-2011
author:         David Hollis
srcversion:     0889AC645D9EA92D3DE4C5B
(中略)
alias:          usb:v0B95p772Ad*dc*dsc*dp*ic*isc*ip*

ということで、IDも大丈夫そう。

で、LAN-TX/U2HB3を実機に挿してインストーラ立ち上げたらあっさりネットワークインタフェースを検出してフェーズが進み、特に問題なくインストールは完了。ただ、インストールに使用したインタフェースがeth0に割り当てられるので、これをOnBoardのNICに割り当てなおしたい。まずは、OnBoardのNICを認識しているかを確認。

$ifconfig -a

で出てくる、p33p1というのがそれっぽい。ということで、イーサネットケーブルを接続して、動かしてみる。

#ifconfig p33p1 up
#dhclient p33p1
$ifconfig p33p1
p33p1     Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx
               inet addr:192.168.1.xx  Bcast:192.168.1.255  Mask:255.255.255.0

ということで大丈夫そう。 起動時のネットワークインターフェースの認識を変更するには/etc/udev/rules.d/70-persistent-net.rulesを編集する。

#vi
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:01:8e:xx:xx:xx", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

こんな感じで各インタフェースのエントリがあるので、MACアドレスを書き換える。必要であれば/etc/network/interfacesも書き換える。このあと再起動で、OnBoardのNICをeth0で認識してDHCPでアドレス取得まで確認できたのでとりあえずのインストール作業は完了した。

Tags: linux