簡単な回復のためにEFIブートエントリをバックアップしてください。

簡単な回復のためにEFIブートエントリをバックアップしてください。

Windows 10がLinux EFIブートエントリを消去する可能性が高いという回答の後の説明を参照してください。ここ:

Windowsを一度起動すると、Windows 10は通常ファームウェア起動エントリを「自己修復」します。このプロセス中にファームウェア(リストなど)に既存のWindowsブートエントリがない場合、通常はすでに使用されているかどうかにかかわらず、独自に上書きされefibootmgrます。Boot0000

Windows 10でEFIブートエントリを消去しても簡単に復元できるように、EFIブートエントリを事前にバックアップしたいと思います。

しかし、これを行うことができる既存のツールはないようです。https://github.com/rhboot/efibootmgr/issues/10efivarユーティリティは言及されていますが、いくつかの手動プロセスがあります。ただし、その方向に関する追加情報が見つかりません。

したがって、問題があります。または、次のEFIブートエントリがある場合:

Boot0000* debian        HD(13,GPT,007a058a-8e5e-45df-8d97-6575b66b5355,0x1afa9000,0x113000)/File(\EFI\debian\grubx64.efi)

次はどうやって再作成できますか?

答え1

起動方法を知ってツールを準備したら、最初から起動を再開するのは簡単ですefibootmgr。確かに。

Boot0000* debian HD(13,GPT,007a058a-8e5e-45df-8d97-6575b66b5355,0x1afa9000,0x113000)/File(\EFI\debian\grubx64.efi)

007a058a-8e5e-45df-8d97-6575b66b5355ESPパーティションのPARTUUID \EFI\debian\grubx64.efi。 (13 可能はパーティション番号ですが、仕様によると、PARTUUIDはデフォルトの識別子です。 )

コマンドefibootmgrはディスクのみを知る必要があります。ディスクごとに1つのESPしかないと仮定すると、そのディスクとそのPARTUUIDでESPパーティションを自動的に見つけます。したがって、このPARTUUIDがあなたの/dev/sda13パーティションに属していると仮定します(使用blkidまたはlsblk -o +partuuid確認)。

開始項目を再生成する(または今追加のコピーを作成するには):

efibootmgr -c -d /dev/sda -L debian -l \\EFI\\debian\\grubx64.efi

バックスラッシュはシェルの特殊エスケープ文字であるため、2倍になります。

このコマンドはESPパーティション/dev/sdaと対応するPARTUUIDを自動的に検索し、起動エントリを作成します。

efibootmgrBootNNNN開始項目の最初の無料番号が自動的に選択され、に自動的に追加されるため、すでに存在するBootOrder場合は作成され、に設定されます。Boot0000Boot0001BootOrder0001,00000000

これは現在の開始エントリの有効なバックアップです。

(lsblk -o +partuuid; efibootmgr -v) > boot-entry-repair-kit.txt

答え2

ファームウェアefiブートエントリをバックアップする必要はありません。ツールだけで簡単に復元できます。

通常、WindowsはLinuxエントリを削除しませんが、まず優先順位を付けることができます。最新のファームウェアを使用すると、デバイスとインストールされているEFIエントリを一覧表示するブートメニューを開くことができます。ここでLinuxエントリを選択でき、必要に応じてgrubインストーラまたはefibootmgrを再実行してエントリの順序を変更できます。

複数の項目をサポートしていない古いファームウェアがある場合は、[設定]に移動して現在の項目を編集して内容を記録し、Windowsでその項目を削除してから手動で再入力できます。

これがすべて失敗した場合は、USBスティックにrefindなどのEFIセレクタをインストールし、それを使用してEFI ESPパーティションから起動可能なOSを検索し、そこからLinuxを選択して上記のようにgrubを再インストールできます。

Linux自体がEFIパーティションで破損している場合、refindは時々Linuxパーティションに直接移動してカーネルを直接起動することがあります。

別の方法は、リカバリモードでLinuxインストールメディアを起動し、EFIエントリを回復することです。

関連情報