カスタマイズされたLinuxカーネルで起動すると、UEFIプリブート環境は異常です。

カスタマイズされたLinuxカーネルで起動すると、UEFIプリブート環境は異常です。

最初からLinuxカーネルを構築しようとしています。現在のシステムには、Ubuntu 20.04.3 LTSでLinux 5.4.0-050400汎用カーネルを実行するIntel Xeon Gold 6242 CPUがあります。
カーネルを構築するために実行した手順は次のとおりです。

  1. cd /path/to/new/kernel/source(ダウンロード後のソースコードは変更されませんでした)
  2. cp -v /boot/config-5.4.0-050400-generic ./.config
  3. make menuconfig、コピーした内容をロードして保存します.config file.config内容は実際には変更されませんが、行の順序は変更されます)。
  4. make -j32
  5. make modules_install install
    最後に、再起動するまですべてがエラーなく正常に実行されていましたが、起動するために新しいカーネルを選択したときに、次のメッセージで失敗しました。 ここに画像の説明を入力してください。

私が動作しようとした他のいくつかのオプションは次のとおりです。

  1. ソースからLinux 5.18.0を構築する(Ubuntu 20.04.3 LTSはLinux 5.4をデフォルトのカーネルとして使用するため、以前のバージョンが機能しない可能性があると思いました):同じエラーメッセージで失敗します
  2. .configすでに使用しているファイルをコピーする必要なしに新しい.configファイルの作成既存のファイルからロード/保存するかどうかにかかわらmake menuconfigず:.config同じエラーメッセージで失敗します
  3. ソースからカーネルを構築する代わりに、Ubuntuメインラインカーネルから直接新しいカーネルをインストールしてみてください。うまく動作します(Linux 5.15.0)

私は次のような同様の質問を確認しました。LinuxカーネルをコンパイルしてUEFIで起動する非同期:VFS:未知のブロック(0,0)にルートファイルシステムをマウントできません。自己構築カーネルを使用して起動できません。しかし幸運はありません。
最後に1つ:これ数日前に投稿したRedditの重複した質問です。、しかし残念ながらそこから多くの助けを得ていなかったので、ここに再投稿します。

どんなアドバイスも本当にありがとうございます。ありがとうございます!

ベストアンサー1

R640でも同じ問題が発生しました。私が行った修正は、実行後に実行してから実行するmake -j "$(nproc)" bindeb-pkg代わりにパッケージをインストールすることでした。make.debdpkgmake modules_install install

問題の本当の根本原因が何であるか誰が知っていますか?

おすすめ記事