2022年8月、ホームページを全面リニューアルしました! 情報を分かりやすくお伝えできるサイト作りを目指してまいります。

Debian Kernel Panic!

1.現象
Debian woodyからsargeへアップデートしたら、Kernel Panicにおちいった。
woodyからsargeへapt-get upgradeでモジュールのアップデートして、そんでもってKernelもKernel-2.4.27-2へアップデートして再起動したら、次のエラーを出力してKernel Panicでストップしてしまった。

root fs not mounted VFS:Cannot open root device “302” or 03:02
Please append a correct “root=” boot option
Kernel panic:VFS:Unable to mount root fs on 03:02

とか、

VFS: Cannot open root device “hda2” or unknown-block(0,0)
Please append a correct “root=” boot option
Kernel panic – not syncing:VFS:Unable to mount root fs a unknow-block(0,0)


2.原因
initrdイメージ起動されてなかったので、デバイスモジュールが読み込めない状態であった。


3.対策
再起動から、LILO 22.2・・・・・・・・・ のときに、すかさずAlt+F2を押してBoot Menuを表示させて、
LinuxOLDで起動する。その後、以下の事を行う。lilo.confに青色の部分を追加して、lilo -vを実行する。そのあと、再起動すれば完了。ちなみに、initrdイメージの作り方は、 こちら 。

1)LILOの場合

# vi /etc/lilo.conf

省略
image = /vmlinuz
      label = Linux
      initrd = /boot/initrd.img-2.4.27-2-386
      read-only

image = /vmlinuz.old
      label = linux.OLD
      read-only
      optional

# lilo -v
で反映する。

initrdが無い場合は作る。例えば、/boot/initrd.img-2.4.27-2-386 と言うイメージファイルを作るとすると。

# mkinitrd -o /boot/initrd.img-2.4.27-2-386 2.4.27-2-386

2)GRUBの場合

# more /boot/grub/menu.lst

# Boot automatically after 30 secs.
timeout 30

# By default, boot the first entry.
default 0

## ## End Default Options ##

title Debian GNU/Linux, kernel 2.4.27.2
root (hd0,1)
kernel /boot/vmlinuz root=/dev/hda2 ro
initrd /boot/initrd.img-2.4.27-2-386
boot

title Debian GNU/Linux, kernel 2.4.18-bf2.4
root (hd0,1)
kernel /boot/vmlinuz-2.4.18-bf2.4 root=/dev/hda2 ro
boot

title Debian GNU/Linux, kernel 2.4.18-bf2.4 (recovery mode)
root (hd0,1)
kernel /boot/vmlinuz-2.4.18-bf2.4 root=/dev/hda2 ro single
boot

GRUBの場合は、 menu.lst ファイルを赤字の要領で編集する。

以上

コメント