微軟週年更新破壞了我的 refind 引導程序

微軟週年更新破壞了我的 refind 引導程序

我同時安裝了 Windows 10 和 Linux。我用的是UEFI。我的設定很複雜。首先我安裝了Windows,停用了Fast Boot,然後用Grub安裝了Manjaro,但我更喜歡rEFInd,所以我透過chroot安裝它並刪除了grub。

一切都很完美,但在周年更新後,當我重新啟動時,我發現 rEFInd 被 Windows Bootloader 取代,並且快速啟動也再次啟用。

為了解決這個問題,我再次chroot並安裝了refind。它一直有效,直到第一次啟動 Windows。當我啟動 Windows 時,refind 一直被刪除。

我決定刪除 efi 分割區中的所有檔案。再次安裝refind。但現在我無法啟動 Windows。我嘗試根據這個問題透過緊急控制台恢復Windows引導程式: 如何從 Windows 修復 Windows 10 引導程式

但它不能修復 Windows 啟動,而不是我的 UEFI 在任何分割區上都看不到任何引導程式。

我的分區:

sda      8:0    0 931,5G  0 disk 
├─sda1   8:1    0   300M  0 part 
├─sda2   8:2    0   100M  0 part /boot/efi
├─sda3   8:3    0   128M  0 part 
├─sda4   8:4    0 310,5G  0 part 
├─sda5   8:5    0   450M  0 part 
├─sda6   8:6    0 390,6G  0 part /mnt/1A6D432B224C53B6
├─sda7   8:7    0   221G  0 part /
└─sda8   8:8    0   8,4G  0 part [SWAP]

問題 1:如果 Windows 開機載入程式已從 EFI 分割區中完全刪除,如何還原它?

問題 2:如何強制 Windows 在更新後不破壞我的開機載入程式?

PS:每次恢復rEFInd都很耗時。 :(

答案1

“我嘗試根據以下問題通過緊急控制台恢復 Windows 引導程式:How to fix Windows 10 boot loader from Windows”

與 UEFI 啟動無關。那裡回答的問題是關於 MBR 引導的。


在 UEFI 上,開機磁區和 MBR 不用於開機!

UEFI韌體啟動管理器正在直接載入作業系統載入器/啟動管理器!

例如,UEFI啟動管理器直接載入Windows啟動管理器或直接載入GRUB(Linux載入器)。

要修復 Windows 啟動環境,您需要一個簡單的命令:

bcdboot c:\windows /s V: 

其中 c: 是 Windows 分割區,V: 是 EFI 系統分割區。

不要忘記以 UEFI 方式啟動 Windows 恢復 USB/DVD!

更多細節 -修復 Windows BCD

筆記:

1)bcdboot修復了完整的啟動環境(不只是BCD)。

2) 每次 Windows 升級時,「快速啟動」都會重設為預設值!

3)「快速啟動」是Windows設定(在電源選項中),「快速啟動」是韌體設定。

相關內容