harry’s memorandum

おれおれメモ

「Device eth0 does not seem to be present, delaying initialization」対策

VMwareのOVFをデプロイした後によく出るメッセージです。MACアドレスの古い情報が残っているのが理由なんだけどね。

Device eth0 does not seem to be present, delaying initialization

直す方法はこんなところかと。

  1. ifconfig -a でMACアドレス調べる
  2. /etc/sysconfig/network-scripts/ifcfg-eth0 のHWADDRを変更
  3. /etc/udev/rules.d/70-persistent-net.rules のeth1を消してeth0のMACを変更
  4. reboot

VMwareだったらVMware-Toolsを入れていれば起きないと思ってるけど、とりあえず対策としてOVFにする前に、シェルスクリプトを1つ入れておいてデプロイして問題が発生したらする直せるようにしています。

#!/bin/bash

ifcfg=/etc/sysconfig/network-scripts/ifcfg-eth0
rule=/etc/udev/rules.d/70-persistent-net.rules

mac=$(ifconfig -a | awk '{ if(NR==1) print $NF}')

sed -i -e "s/^HWADDR=.*/HWADDR=$mac/g" $ifcfg
sed -i -e '8,$d' $rule
cat << EOF >> $rule
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="$mac", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
EOF