別のHDDからWindowsに切り替えた後、SSDからLinuxを起動できません。

別のHDDからWindowsに切り替えた後、SSDからLinuxを起動できません。

ディスクをSSD(Linux OSを使用)からHDD(windwos 8インストール済み)に変更しましたが、しばらく使用していない必要な操作を実行した後、次のようにディスクを切り替えます(SSDに再接続しました)。 linux debian) 再起動できません。このエラーが発生します。ここに画像の説明を入力してください。

答え1

UEFIシステムは、プラグを抜いたドライブの起動エントリを忘れます。 UEFIは通常Windowsを見つけて新しいUEFIエントリを作成しますが、ほとんどのLinuxシステムではそうではありません。また、外部ドライブ(インストールプログラム)と同じ方法でバックアップまたはハードドライブエントリを起動できる必要があります。 Grub は代替手段として /EFI/Boot/bootx64.efi をインストールします。以前のバージョンでは、アイテムを手動で作成する必要がありましたが、Boot Repairはこれを別の修正として行いました。

UEFIブートメニューからバックアップまたはハードドライブエントリを起動できますか? UEFI以外の場合、システムはBIOS / CSM /レガシーから起動するように設定されていますか?

UEFI エントリには、ブートファイルを探す場所を知るために、ESP-efi システムパーティションの GUID が必要です。 UEFIまたはBIOSの場合は、UEFIエントリを再生成するか、grubを再インストールする必要があります。おそらく詳細を見るのが最善でしょう。ライブインストーラ(2番目のオプション)を含むppaバージョンを使用するか、以前のブートリカバリISOの代わりに作業しているインストールを使用してください。起動情報の概要レポートへのリンクをコピーして貼り付け、レポートを公開しないでください。確認されるまで自動回復を使用しないでください。

https://help.ubuntu.com/community/Boot-Repair

単にefibootmgrを使用して正しいUEFIブートエントリを復元できます。多くの人がefibootmgrを使用して、UEFI NVRAMに新しいエントリをデフォルトブートとして追加するgrubを完全に再インストールします。 efibootmgrエントリの例:

https://askubuntu.com/questions/668506/changed-the-uefi-motherboard-on-a-dell-laptop-now-it-says-no-os-Detected

man efibootmgr

答え2

問題は、UEFIがユーティリティを介して読み取りまたは変更できるブート構成を保存するためにコンピュータ内のNVRAMに依存していることです。 Windowsは、MSFTがUEFI仕様(32ビットx86の場合)efibootmgrに適切に指定する「代替ブートローダ」をインストールすることを好みます。 )、したがってこのフォールバックで最初に起動し、後でNVRAM構成を「修正」する可能性が高いです(私はWindowsの専門家ではないので、経験というよりは口コミに近いです)。したがって、次のことができます。\EFI\BOOT\bootx64.efibootia32.efi

  1. grub-installWindowsの「回復」後にNVRAM「回復」(UEFI対応のリカバリメディアから起動を実行)UEFIモードで)、または
  2. コピーを入れてください/boot/efi/grubx64.efi/boot/efi/bootx64.efiただし、grubバージョンの更新後に中断される可能性があります)。

よりエキゾチックな方法があります(例:ブートisoをもう一度見つけてくださいメインブートローダをチェーンロードするよりも読むことをお勧めします。EFIブートローディング原理何が起きているのか、何ができるのか(そしてなぜ)理解したい場合は、@oldfredが正しい方向を教えてくれたので(同じマニュアルで助けることができます)、ヒントをやり直して答えを得ることを願っています。 : - )

もしこのツールが再び必要な場合に備えて、構造の代替療法画像にはrefind、efibootmgr、grubなどが含まれており、とても便利です。

関連情報