初期衝動
CentOS6でVMの複製を行うとその後,IPアドレスやNICがうまくつかない場合がある. これはCentOS 6ではMACアドレスとNIC名称を固定する設定が/etc/udev/rules.d/70-persistent-net.rulesに投入されるのが原因である. これにハマった.ちなみに「vm 複製 IPが付かない」などと検索すると無限に同じようなブログが出てくるのが分かった. これを解決する方法がいくつか存在する.それとせっかく問題にぶつかったのでこれと向き合ってみる.
対策方法
- /etc/udev/rules.d/70-persistent-net.rules から複製前に該当行を削除する
- /etc/udev/rules.d/70-persistent-net.rules にディレクトリを作成する
- /lib/udev/write_net_rules にネットワーク永続化ルールを無効にする設定を行う
1. /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. SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="*************", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
このSUBSYSTEM
の行を一行削除してください.
2. /etc/udev/rules.d/70-persistent-net.rules にディレクトリを作成をしてファイル生成をさせない
/etc/udev/rules.d/70-persistent-net.rules にディレクトリを作成をしてファイル生成をさせない
rm -f /etc/udev/rules.d/70-persistent-net.rules mkdir /etc/udev/rules.d/70-persistent-net.rules
/etc/motd に一筆加えておくのをお勧めする. 元に戻したければこのディレクトリを削除してリブートすればいい
rm -rf /etc/udev/rules.d/70-persistent-net.rules reboot
3. /lib/udev/write_net_rules にネットワーク永続化ルールを無効にする設定を行う
/lib/udev/write_net_rules
#RULES_FILE='/etc/udev/rules.d/70-persistent-net.rules' RULES_FILE='/dev/null'
/dev/null の彼方にでもおくっておきましょう.