「このシステムはEFI変数をサポートしていません」問題を解決するには?

「このシステムはEFI変数をサポートしていません」問題を解決するには?

「このシステムはEFI変数をサポートしていません」問題を解決するには?

sudo efibootmgr -v
EFI variables are not supported on this system.

Debian11をUEFIモードでインストールしましたが、起動段階で問題が発生し、システムは常にレガシーBIOSモードで起動しました。 (起動メニューでUEFIモードを設定したにもかかわらず)

編集:blkid出力

sudo blkid
/dev/sda1: LABEL_FATBOOT="BOOT" LABEL="BOOT" UUID="2F1D-01E6" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="c906677e-c2c2-42b5-b818-f0b19c046e95"
/dev/sda2: LABEL="swap" UUID="1274a782-676a-41b0-8509-92f73bd675c3" TYPE="swap" PARTUUID="4a555697-e713-400d-ae9e-613d028c7893"
/dev/sda3: LABEL="root" UUID="13503165-9c5f-498d-ab5f-0c13f11cbaa6" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="5484dedd-6adf-45af-b7b0-ba105d14528b"
/dev/sda4: LABEL="home" UUID="93c98828-5fb8-4c0e-b6bf-de8d13a9d22e" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="ae15bbdb-4e29-4dfa-aa99-b39e5377a098"

ベストアンサー1

あなたのシステムは以前のブートローダーを好むようです(見つかった場合)。

その場合は、BIOS設定でこのデフォルト設定を変更することはできません。システムディスクのブロック#0にある以前のブートコードを積極的に削除することは答えかもしれません。

システムディスクがあると仮定すると、/dev/sda次のようになります。

dd if=/dev/zero of=/dev/sda bs=446 count=1

これにより、既存のBIOSセマンティクスで起動が発生/dev/sdaせず、UEFIブートローダ(ディスク上の場合)のみが残ります。

システムが完全に起動しない場合は、復旧モードの Debian 11 インストールメディアなどの外部メディアから起動する必要があります。これにより、UEFIモードで外部メディアを起動することを選択したことを確認してください。。外部メディアがレガシーモードで起動すると、UEFIファームウェアを設定するためのランタイムインターフェイスが無効になり、UEFIブートローダのインストールプロセスが失敗します。

GRUBブートローダのUEFIバージョンを再インストールする必要がある場合は、インストールされたシステムにchrootするときに次のコマンドラインを使用する必要があります。

grub-install --force-extra-removable --target=x86_64-efi /dev/sda

システムでセキュアブートを使用する必要がある場合は、この--uefi-secure-bootオプションを追加してください。

この--force-extra-removableオプションは通常、UEFIブート可能リムーバブルディスクに使用されるブートローダの追加コピーを設定し、/boot/efi/EFI/BOOT/BOOTX64.EFIシステムに欠陥のあるUEFI実装がある場合に便利です。

UEFIファームウェア設定にアクセスせずにリムーバブルメディアブートローダの場所を設定することもできるため、理論的には実際にレガシーモードで起動してもリカバリ起動が成功する必要があります。これにより、UEFIモードの独自のディスクからシステムを起動できる場合、システムがefibootmgrUEFIモードで実行されたら、UEFIブートローダ登録プロセスを試して完了できます。

おすすめ記事