Windows 10 と Linux を一緒にインストールしました。UEFI を使用しました。セットアップは複雑でした。最初に Windows をインストールし、Fast Boot を無効にしてから、Grub で Manjaro をインストールしましたが、rEFInd の方が好みなので、chroot でインストールし、grub を削除しました。
すべて完璧に動作しましたが、アニバーサリー アップデート後に再起動すると、rEFInd が Windows ブートローダーに置き換えられ、Fast Boot も再び有効になっていることがわかりました。
これを修正するために、chroot して refind を再度インストールしました。最初の Windows 起動までは動作しました。Windows を起動すると、常に refind が削除されました。
efi パーティションからすべてのファイルを削除することにしました。refind を再度インストールしました。しかし、Windows を起動できなくなりました。次の質問に従って、緊急コンソールで Windows ブートローダーを回復しようとしました。 Windows 10 ブートローダーを Windows から修正する方法
しかし、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: EFI パーティションから Windows ブートローダーが完全に削除された場合、それを回復するにはどうすればよいですか?
質問 2: 更新後に Windows がブートローダーを壊さないようにするにはどうすればよいでしょうか?
PS: 毎回 rEFInd を回復するのは時間がかかります。:(
答え1
「この質問に従って、緊急コンソールで Windows ブートローダーを回復しようとしました: Windows から Windows 10 ブートローダーを修正する方法」
UEFI ブートとは関係ありません。そこで回答されている質問は MBR ブートに関するものです。
UEFI では、ブートセクターと MBR はブートに使用されません。
UEFI ファームウェア ブート マネージャーは OS ローダー/ブート マネージャーを直接ロードします。
たとえば、UEFI ブート マネージャーは Windows ブート マネージャーを直接ロードするか、GRUB (Linux ローダー) を直接ロードします。
Windows ブート環境を修正するには、次の簡単なコマンドが必要です。
bcdboot c:\windows /s V:
ここで、c: は Windows パーティション、V: は EFI システム パーティションです。
Windows 回復 USB/DVD を UEFI 方式で起動することを忘れないでください。
詳細は -Windows BCD を修復する。
ノート:
1) bcdboot は完全なブート環境 (BCD だけでなく) を修正します。
2) 「高速スタートアップ」は、Windows をアップグレードするたびにデフォルトにリセットされます。
3) 「高速スタートアップ」は Windows の設定 (電源オプション内) であり、「高速ブート」はファームウェアの設定です。