Hyper-V で CentOS7 が起動しない備忘録

Microsoft
Photo by hyt.

久しぶりにテスト用クライアントの Hyper-V で1年ほど前の CentOS7 のイメージを復元してみると,何と!

Failed to open \EFI\BOOT\grubx64.efi – Not Found
Failed to load image \EFI\BOOT\grubx64.efi: Not Found
Start_image() returned Not Found

>Start PXE over IPv4

というメッセージで止まってしまいました.

修復手順

まず,CentOS7 のインストールイメージをマウントし,このイメージから CentOS のインストーラーを起動します.今回は,

CentOS-7-x86_64-Minimal-1804.iso

を使いました.

起動すると,

  • Install CentOS 7
  • Test this media & install CentOS 7
  • Troubleshooting

の3つの選択肢がでてきますので,今回は「Troubleshooting」を選びます.すると,

  • Install CentOS 7 in basic graphics mode
  • Rescue a CentOS system

の2つの選択肢が出てきますので,今度は「Rescue a CentOS system」を選びます.

これでレスキューイメージが起動しますが,起動後,

  • Continue
  • Read-only mount
  • Skip to shell
  • Quit (Reboot)

の選択肢が表示されます.これは「Continue」を選択すれば OK です.最終的に,

Your system has been mounted under /mnt/sysimage

if you would like to make your system to root environment, run the command:

chroot /mnt/sysimage

Please press <return> to get a shell.

の様に表示されますので,指示に従い,<return> を入力したあと,

sh_4.2# chroot /mnt/sysimage/
bash-4.2#

の様に続けることで,起動しなくなった CentOS7 のルートに chroot されます.ここから復旧していけば良い訳です.

今回は,grubx64.efi が無いという不具合なので,

bash-4.2# mkdir /mnt/boot
bash-4.2# mount -t vfat /dev/sda1 /mnt/boot
bash-4.2# cp /boot/efi/EFI/centos/grubx64.efi /boot/efi/EFI/BOOT/

として「CentOS-7-x86_64-Minimal-1804.iso」を取り外し,再起動で無事,CentOS7 が立ち上がるようになりました.

このあと,yum update ができないなどの不具合があったのですが,これは少し今回のものとは毛色が違うので別記事で復旧手順をご紹介します.

CentOS7 で yum update に失敗する備忘録
前記事の続きです.症状ちょっとした事情で1年度ほど前の CentOS7 の仮想マシンイメージを復元して,起動しなかったのをきちんと起動するように修復したのが前回の記事なのですが,今度は,yum update としても,アップデートイメージが...

以上!

MicrosoftServer
スポンサーリンク
Following hyt!
タイトルとURLをコピーしました