最初からLinuxカーネルを構築しようとしています。現在のシステムには、Ubuntu 20.04.3 LTSでLinux 5.4.0-050400汎用カーネルを実行するIntel Xeon Gold 6242 CPUがあります。
カーネルを構築するために実行した手順は次のとおりです。
cd /path/to/new/kernel/source
(ダウンロード後のソースコードは変更されませんでした)cp -v /boot/config-5.4.0-050400-generic ./.config
make menuconfig
、コピーした内容をロードして保存します.config file
(.config
内容は実際には変更されませんが、行の順序は変更されます)。make -j32
make modules_install install
最後に、再起動するまですべてがエラーなく正常に実行されていましたが、起動するために新しいカーネルを選択したときに、次のメッセージで失敗しました。
私が動作しようとした他のいくつかのオプションは次のとおりです。
- ソースからLinux 5.18.0を構築する(Ubuntu 20.04.3 LTSはLinux 5.4をデフォルトのカーネルとして使用するため、以前のバージョンが機能しない可能性があると思いました):同じエラーメッセージで失敗します
.config
すでに使用しているファイルをコピーする必要なしに新しい.config
ファイルの作成既存のファイルからロード/保存するかどうかにかかわらmake menuconfig
ず:.config
同じエラーメッセージで失敗します- ソースからカーネルを構築する代わりに、Ubuntuメインラインカーネルから直接新しいカーネルをインストールしてみてください。うまく動作します(Linux 5.15.0)
私は次のような同様の質問を確認しました。LinuxカーネルをコンパイルしてUEFIで起動する、非同期:VFS:未知のブロック(0,0)にルートファイルシステムをマウントできません。と自己構築カーネルを使用して起動できません。しかし幸運はありません。
最後に1つ:これ数日前に投稿したRedditの重複した質問です。、しかし残念ながらそこから多くの助けを得ていなかったので、ここに再投稿します。
どんなアドバイスも本当にありがとうございます。ありがとうございます!
ベストアンサー1
R640でも同じ問題が発生しました。私が行った修正は、実行後に実行してから実行するmake -j "$(nproc)" bindeb-pkg
代わりにパッケージをインストールすることでした。make
.deb
dpkg
make modules_install install
問題の本当の根本原因が何であるか誰が知っていますか?