-grant-nvme
カスタムカーネルを構築し、コンパイル中にCONFIG_LOCALVERSIONを指定しました。しかし、起動しようとすると、grubは私が何をしてもそれを見つけるようですが、/lib/modules/6.6.16
6.6.16をどこから取得するのかわかりません。おそらくそれを探しているようです6.6.16-grant-nvme
。コンパイル中にCONFIG_LOCALVERSIONが正しく設定されているか、GRUBのブートエントリが正しく設定されているか、/lib/modulesと/boot/vmlinuz-6.6.16-grant-nvme GRUBに正しい名前があるかどうかを数十回確認しました。フォルダ6.6.16バニラの理由で起動します。
どこから持ってきたの?正しいフォルダにどのように送信できますか?
完全なエラーは次のとおりです。
[ 6.174579] systemd[1]: Failed to start Load Kernel Modules.
[FAILED] Failed to start Load Kernel Modules.
[ 6.494351] dracut-pre-udev[499]: modprobe: FATAL: Module dm_mod not found in directory /lib/modules/6.6.16
もちろん、dracutに入ったとき、私は次のことを見ました。
dracut:/# ls /lib/modules
6.6.16-grant-nvme
修正する
私も試しましたdracut --force --kver 6.6.16-grant-nvme /boot/initramfs-6.6.16-grant-nvme.img
アップデート2
今日新しい目でこの質問に戻り、続行してくださいvmlinuz
。カーネルのビルド文字列が奇妙に見えます。6.6.16 ([email protected]) (gcc (GCC) 11.4.1 20230605 (Red Hat 11.4.1-2), GNU ld version 2.35.2-42.el9) #2 SMP PREEMPT_DYNAMIC Thu Feb 15 08:10:42 EST 2024
これは明らかに私のものではありませんCONFIG_LOCALVERSION
。カーネルのビルドプロセスを再確認し、問題があるかどうかを見てみましょう。問題は、/bootのフォルダ名が正しいことです。読んでいる間だけこれが起こると想像できます。CONFIG_LOCALVERSION
答え1
結局戻って構成を保存して、、make clean
をmake mrproper
しましたmake distclean
。
その後、設定を復元して再構築しましたが、うまくいきました。名前がすべて正確で何が間違っているか正確にはわかりませんが/boot
、ローカルバージョンを構成せずに実際のカーネルビルド自体が何とか何かを取り出したようです。
すべてをリセットした後、すべてがうまくいきました。