ESXi

Hyper-VからESXiに移行したLinux仮想マシンが起動しない

  

0
(0)

Hyper-VからESXiに移行したLinux仮想マシンが起動しませんでした。

具体的には以下のようなエラーが出ています。

dracut-initqueue[xxx]: Warning: dracut-initqueue timeout - starting timeout scripts
Warning: Could not boot.
Warning: /dev/xxxxx/xxxx does not exist

エラー出力例

これは、/をマウントする前にメモリ上に展開するinitramfsで問題が発生した場合に出力するメッセージです。

ですのでESXiに移行したLinuxのinitramfsを再構築する必要があります。参考にしたのは以下のサイトです。

CentOSのDVDからブート

仮想マシンの編集で仮想ハードウェアにCD/DVDドライブを追加し、CentOSのISOファイルを指定します。

これでうまくDVDから起動できない場合には、仮想マシンオプションタブに移り、「次回仮想マシンの起動時に、強制的にBIOSセットアップ画面に入る」にチェックを入れてDVDブートできるようにしてください。

Rescue(レスキュー)モード

DVDからCentOSを起動してRescueモードに入ります。

1を入力

EnterでShellモードに移ります

initramfsの再構築

さてRescueモードに入ったらHDDにインストールされたOSのproc、dev、sys、runディレクトリをrootディレクトリマウントします

sh-4.4# mount --bind /proc /mnt/sysimage/proc
sh-4.4# mount --bind /dev /mnt/sysimage/dev
sh-4.4# mount --bind /sys /mnt/sysimage/sys
sh-4.4# mount --bind /run /mnt/sysimage/run
sh-4.4# systemctl start multipathd.service
sh-4.4# cd
sh-4.4# chroot /mnt/sysimage
sh-4.4# cd /boot
sh-4.4# dracut -f /boot/initramfs-3.10.0-1127.18.2.el7.x86_64.img 3.10.0-1127.18.2.el7.x86_64
sh-4.4# exit
exit
sh-4.4# reboot

initramfsの再構築はdracut -f だけでもOKかもしれません(が私は失敗したので指定を行いました)。

Kernel version 4.18.0-227.el8.x86_64 has no module directory /lib/modules/4.18.0-227.el8.x86_64とエラーが出ます

dracut -f /boot/initramfs-$(uname -r).img $(uname -r)を実行します

これでちゃんと移行したLinuxが起動できるようになります。

記事は以上!

この記事は役に立ちましたか? | Is this article useful for you?

評価をお願いします | Please leave your rating.

平均 | Av.: 0 / 5. 投票数 | Votes: 0

最初の評価を下さい | Please vote for the first rating.

-ESXi
-, , , ,

© 1999 - 2020 蒲田ネット