パスワードを忘れた? アカウント作成
465606 journal

hoagの日記: VMware とかで Debian イメージをコピったら NIC が見えなくなる件

日記 by hoag

何かテストしようとして、VMware の既存のイメージファイル (ディスクイメージと .vmx)をコピーしてきてブートしたところ、 eth0 が出てこなくなった。

dmesg では pcn32 は認識していて、ドライバもロードされている。

原因は udev 。VMware が新規環境の MAC アドレスを既存のものと重複しない 様に、新規に発行する。これが udev のルールファイル中の記述とアンマッチ になる。

それまでの MAC アドレスが eth0 として udev に登録されているため、新規の ものは eth1 となる。つまり、番号が増える。ところが /etc/network/interfaces には、eth0 しか書いてないものだから、eth1 が up されないのだ。

対策は、/etc/udev/rules.d/z25_persistent-net.rules の修正。ここに MAC アドレスと eth* との対応が書いてある。ここの MAC アドレスを現物に合わせて修正する。 再起動すると、eth0 として認識するので、/etc/network/interfaces の 記述の通りに up してくれる。

7/9 追記

多分、同じ問題がノート PC で PC カード や USB の NIC を取り替えつつ使う場合にも 起こると思う。つまり、新しい NIC を挿して、エラーも見当たらないのに、IP アドレスが 正常に割り当てられない、という現象になるはずって事。

以前は認識した順に eth0 、eth1 、... の様に数字を増やして行ったので、 (暗黙の内に)それを前提としている場面もまだあるかもしれない。

疑わしいと思ったら、

$ /sbin/ifconfig eth1

とかを実行してみると良い。eth1 の数字の部分をだんだんと大きくしていった時に、 どこかで NIC が見つかって、IP アドレスが取得できていなかったら、それが当たり。

typodupeerror

吾輩はリファレンスである。名前はまだ無い -- perlの中の人

読み込み中...