前置き
RaspberryPi2にUbuntuを入れていたが、apt-get upgrade
したタイミングでNICのデバイス名が変わっていたので対処した
現象
ifconfig
ifconfig
してみると。loしか出てこない。
$ ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:164 errors:0 dropped:0 overruns:0 frame:0
TX packets:164 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:12104 (12.1 KB) TX bytes:12104 (12.1 KB)
$
dmesg
dmesgで起動時のメッセージを見てみると何やらリネームされている。
(enxXXXXXXXXXXXX
の部分はMACアドレスなdので伏せ字に)
$ dmesg | gerp eth
[ 5.585687] smsc95xx 1-1.1:1.0 eth0: register 'smsc95xx' at usb-3f980000.usb-1.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:1f:97:05
[ 6.404512] smsc95xx 1-1.1:1.0 enxXXXXXXXXXXXX: renamed from eth0
誰がrenameしている?
いくつかのサイトをみてみると /etc/udev/rules.d/70-persistent-net.rules
の変更で対応できるとか、削除すればいいとかあるが、件のRPi2の /etc/udev/rules.d/
は空っぽ。
結論:分からん。
分からないのでrenameすることにした
/etc/udev/rules.d/70-persistent-net.rules
を作成&編集してrenameすることに。wlanの方も同様に見えなくなっていたので対応。
70-persistent-net.rules
SUBSYSTEM=="net",ACTION=="add",ATTR{address}=="XX:XX:XX:XX:XX:XX",NAME="eth0"
SUBSYSTEM=="net",ACTION=="add",ATTR{address}=="YY:YY:YY:YY:YY:YY",NAME="wlan0"
解決
shutdown -r now
して起動後、eth0になっているのを確認。
$ ifconfig
eth0 Link encap:Ethernet HWaddr b8:27:eb:1f:97:05
inet addr:192.168.11.11 Bcast:192.168.11.255 Mask:255.255.255.0
inet6 addr: 2408:211:8266:9900:ba27:ebff:fe1f:9705/64 Scope:Global
inet6 addr: fe80::ba27:ebff:fe1f:9705/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4850 errors:0 dropped:0 overruns:0 frame:0
TX packets:1937 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1484625 (1.4 MB) TX bytes:272408 (272.4 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:164 errors:0 dropped:0 overruns:0 frame:0
TX packets:164 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:12104 (12.1 KB) TX bytes:12104 (12.1 KB)
忘れずに
/etc/network/interfaces
に以下を追加していた。
# eth0
auto eth0
iface eth0 inet dhcp