grub "エラー:署名なし"問題を解決するには?

grub

私はQEMU / KVMでArchlinuxを実行している仮想マシンで遊んでいました。

数日間、すべてが大丈夫で、その後容量を増やすために仮想マシンに新しいディスクを追加しました。

正確に何が起こったのかわかりませんが、VMを起動しようとするとgrubでエラーが発生します。

error: no signature

どこから始めるべきかわかりません。私の問題を解決するのを助けてくれてありがとう。


修正する この問題はQEMU / KVMのバグか他のものかもしれませんか?自分の位置に移動できるからです。グラップメニューを所有し、通常どおり開始ライブUSBを使用している場合。

  • インストールUSBを使う
  • 起動メニューが表示されたら、次を選択しました。UEFI Firmware Settings
  • 選ぶBoot Manager
  • 選ぶGrub
  • これは私を私のものに連れてくる自分だけのグラップメニュー
  • システムが正常に起動します。

ベストアンサー1

GRUB_ERR_BAD_PART_TABLEGRUBソースコードを検索した後、「署名なし」エラーテキストは、GRUBが起動するディスクに有効なパーティションテーブルを表示できないというエラーでのみ表示されます。セキュアブートはここに含まれません。

VMファームウェアの検索順序によれば、VMに追加した新しいディスクが元々起動したディスクの前にシャットダウンされ、GRUB(またはシステムファームウェア?)が間違ったディスクを探しているようです。 。

UEFIファームウェアブートマネージャメニューを使用してVMを正常に起動したので、トラブルシューティングの次のステップはefibootmgr -vVMで実行してBootCurrent値が何であるか、BootXXXXどのブート変数を参照しているかを確認することです。

BootCurrentこの値は変数の最初の値と同じですかBootOrder

  • その場合、これはVMファームウェアのバグであるか、予期しない状況(自己回復システム?)です。

  • そうでない場合、これら2つの起動オプションの違いは何ですか?つまり、BootCurrentがXXXXで、BootOrderの最初の値がYYYYの場合、ブート変数BootXXXXとはBootYYYY何ですか?

表示された変数が有効であると思われる場合は、BootXXXXその変数を最初の項目にすることでBootCurrent問題が解決します。XXXXBootOrder

efibootmgr -o XXXX,<other BootOrder values, if any>

おすすめ記事