user icon

VMware で Ubuntu イメージをコピーしたら NIC が見えなくなる件

テスト環境を作ろうと Ubuntu 9.10 Server の仮想アプライアンスを取ってきてブートしたら eth0 が up しないという事態が発生。少々ハマりました。

結論は「VMware とかで Debian イメージをコピったら NIC が見えなくなる件」に書いてある通り、新しいMACアドレスで eth1 ができていました。ubuntu の場合は /etc/udev/rules.d/70-persistent-net.rules にMACアドレスと eth* との対応が書いてあります。

$ sudo cat /etc/udev/rules.d/70-persistent-net.rules 
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:1f:93:3e", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:1e:58:e2", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

これを編集すればいいわけですが、ちょっと手を抜いて、設定ファイルをリネーム後再起動して解決しました。

$ sudo mv /etc/udev/rules.d/70-persistent-net.rules /etc/udev/rules.d/70-persistent-net.rules.old
$ sudo shutdown -r now

自動で 70-persistent-net.rules を作り直してくれますので 新しいMACアドレスで eth0 の設定が作られます。確認してみましょう。

$ sudo ls -l /etc/udev/rules.d/
total 20
-rw-r--r-- 1 root root  595 2009-11-03 22:20 70-persistent-cd.rules
-rw-r--r-- 1 root root  443 2010-03-29 23:49 70-persistent-net.rules
-rw-r--r-- 1 root root  631 2010-03-29 18:39 70-persistent-net.rules.old
-rw-r--r-- 1 root root  813 2009-11-03 22:40 99-vmware-scsi-udev.rules
-rw-r--r-- 1 root root 1157 2009-10-15 23:01 README

できてますね。

$ sudo cat /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:1e:58:e2", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

大して手間は変わらない気もしますが、ミスはしにくいかも?

Facebooktwitterlinkedintumblrmail

タグ: ,

名前
E-mail
URL
コメント

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)