クラウド環境と仮想環境で、仮想マシンを複製したりする時にスナップショットから新しいマシンを作ったりすると思う。
今使っているクラウドでは、マウントを正常に行う為に/etc/fstabに下記のようにUUIDを明記してボリュームをマウントしておく事が推奨されている。
UUID=f4713aa1-3a33-4933-85e8-94c421269a98 / ext4 defaults 1 1
####ところが、このfstabでUUIDをマッピングするのはテンプレートからマシン複製する時に思わぬトラップになる。。
というのも、fstabでマッピングしているUUIDはあくまでスナップショットを取得した元の仮想マシンにマウントしているディスクのものなので、複製した新しい仮想マシンは別のUUIDを持ったディスクがマウントされる。
で、OS起動時に下記のようなエラーで止まる。。
こうなった時は下記で対応
①まずは、rootのパスワードをいれてログイン
②この状態だと、ディスクがリードオンリーモードでマウントされているので下記コマンドでリードオンリーからリードライトモードへ変更する
mount -o remount ,rw /
③先程のfstabでUUIDマッピングしている行を削除
#UUID=f4713aa1-3a33-4933-85e8-94c421269a98 / ext4 defaults 1 1
で再起動すれば無事起動する
##ついでに
NW関連も下記ファイルがmacアドレスとネットワークインターフェースのマッピングを持っているので、一度削除する
再起動後に、現在のデバイス情報で再作成されるので、その情報を元にifcfg-ethxxあたりでmacアドレスを変更すればうまく疎通する。
rm -f /etc/udev/rules.d/70-persistent-net.rules
覚えてはいるけど、この作業する度に何回も同じミスしてるのでまとめてみた。
#####そもそもスナップショットを取る時点でfstabの該当行をコメントアウトしておけばもちろんこんな事象は起きない。