ポイントに速く..
システムにFedora15とUbuntu11.04のコピーをインストールしました。私は最初にubuntuを/ dev/sda5にインストールし、grub2は/ dev/sdaの先頭にインストールされました。次に、Fedoraを/ dev/sda6にインストールし、いくつかの推奨事項に従って、/ dev/sda6の先頭に彼のブートシステムをインストールしました。この後、grubはFedoraのインストール情報を表示できませんでしたが、ubuntuに入り、update-grubを適用しました。再起動すると、Fedoraに入ることができました。問題は、Fedoraディストリビューションを2.6.38.6-26.rc1.fc15から2.6.40-4.fc15に更新し、その後ubuntuにupdate-grubを適用したことです。 grubで新しいカーネルを実行したい瞬間、このカーネルパニックが表示されます。この問題について多くの情報を見つけましたが、このケースに特に当てはまるものはなかったので、どうしたらよいかわかりません。詳細が必要な場合は、お問い合わせください。
更新:
これは、update-grubの実行後に作成されるファイル/boot/grub/grub.cfgのエントリです。
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Fedora (2.6.40-4.fc15.x86_64) (on /dev/sda6)" --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos6)'
search --no-floppy --fs-uuid --set=root 459a7d80-cc8f-4ae0-89cf-49593a9221e2
linux /boot/vmlinuz-2.6.40-4.fc15.x86_64 ro root=UUID=459a7d80-cc8f-4ae0-89cf-49593a9221e2 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-Sun16 KEYTABLE=la-latin1 rhgb quiet
}
menuentry "Fedora (2.6.38.6-26.rc1.fc15.x86_64) (on /dev/sda6)" --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos6)'
search --no-floppy --fs-uuid --set=root 459a7d80-cc8f-4ae0-89cf-49593a9221e2
linux /boot/vmlinuz-2.6.38.6-26.rc1.fc15.x86_64 ro root=UUID=459a7d80-cc8f-4ae0-89cf-49593a9221e2 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-Sun16 KEYTABLE=la-latin1 rhgb quiet
initrd /boot/initramfs-2.6.38.6-26.rc1.fc15.x86_64.img
}
動作していないカーネルが最初のものです。私が見る唯一の違いは、動作中のカーネルにinitrd命令があることです。動作していないカーネルでこれを複製し、カーネル値を変更しようとしましたが、動作しませんでした。これがお役に立てば幸いです。
よろしく。
この線 initrd /boot/initramfs-kernel.version.img
は、起動時にカーネルが使用する初期RAMディスクの場所をgrubに指示しています。起動プロセス中に、Linuxカーネルはinitrd RAMディスクには、一時ファイルシステム、一部のカーネルモジュール、およびブートプロセスに必要なその他のユーティリティが含まれています。RAMディスクを何らかの理由でマウントできない場合、結果としてカーネルパニックが発生します。 。
/ bootディレクトリにディスクイメージが存在するかどうかを確認するだけで、アップグレード中に正しいRAMディスクイメージが作成されたかどうかを確認できます。新しいカーネルのファイルがないかどうか、または存在しますが、何らかの理由で破損している場合は、 dracutコマンドを使用して新しいものを生成する 。
手動カーネルアップグレード に関するFedora 15のドキュメント、IBMの記事 initrdについて 、および Linuxブートプロセス に関するIBMの記事を次に示します。
Grub.confを編集し、カーネル情報の前にboot=/dev/sda2
を追加しました。パーティションが異なる場合があります。これを理解するのに3日間の試行錯誤が必要でした。
Ubuntuが両方のFedoraカーネルを検出し、一方を起動できても他方を起動できない場合は、GRUB2プロンプトで両方のエントリを比較します。新しいFedoraカーネルが別のパーティションを指しているように私には思えます。
古いカーネルで起動し、新しいカーネルのdracutを試しました!少なくとも数回の試行で解決策はありません!だから私は別の回避策を見つけました。
ターミナルで次のコマンドを呼び出すだけです。
yum reinstall kernel
これにより、最新のカーネルと(すばらしい)新しいinitrdが再構築され、ブートが完了します。