1. 程式人生 > 其它 >CentOS斷電重啟報錯:"Failed to open \EFI\BOOT\grubx64.efi - Not Found"的解決辦法

CentOS斷電重啟報錯:"Failed to open \EFI\BOOT\grubx64.efi - Not Found"的解決辦法

起因:伺服器意外斷電後文件丟失導致無法正常執行。

解決辦法:

1.準備一個centos的啟動盤;
2.通過U盤啟動進入急救模式;
3.進入原機器的centos目錄下找到系統備用的brubx.efi檔案並複製到你顯示丟失檔案的目錄下;
4.重啟電腦,問題解決。

具體操作:

1.到ultraISO官網 下載製作啟動盤的工具,試用版即可。
2.到centOS官網下載centOS映象,並製作啟動盤。推薦下載和你丟失檔案的centOS同版本映象。可以參考這個網頁的做法。參考
3.伺服器插上centOS啟動盤,選擇 Troubleshooting 選項

4.選擇 Rescue a CentOS system

選項

此時可能會報

等系統列印指令碼超時資訊結束後,會進入 >dracut:/# ,你需要找到自己插上的u盤啟動碟符

# 檢視/dev下的硬碟和外部驅動器
ls /dev

如果/dve目錄下內容過多,可以使用:

cd dev
ls | grep sd

通常你的硬碟是sd(a/b/c......)(1/2/3/4......) 例:sdb1
中的一個。

找到後重啟電腦,選擇 Troubleshooting ,在 Rescue a CentOS system選項上 按 E 進入配置

然後修改配置中的stage2=hd:LABEL=CentOS\xxxx 為 stage2=hd:/dev/sdbx(sdbx為前面找到的U盤路徑),然後按control + x執行,這時候就能正常進入rescue system了。
如下圖:

5.進入後找到備份在centos中的efi檔案並複製到丟失目錄下

#重置根目錄到/
chroot /
#檢視磁碟列表
fdisk -l
cd /mnt/sysimage/EFI
ls
#此時會看到BOOT資料夾、centOS資料夾
#到centos中找到grubx64.efi
#用cp命令複製

檢視/mnt/sysimage/EFI目錄下的BOOT檔案 是否缺少grubx64.efi檔案。缺少就從同級的centOS目錄複製一份。
然後重啟電腦,問題解決。

本文圖片來源:https://blog.methodname.com/repaircentos/