前のページ 次のページ 目次

21. 質問と回答:Linuxが起動しません!


21.1 インストール後、ルートがマウントできないのですが

[質問]
Kernel panic: VFS: Unable to mount root fs on 08:02
が出て、それ以上先に行っていません。grub の指定がうまくできていない気が します。SCSI 2台目(2GB)を 1GB(native)、1GB(native)、63MB(swap)に切り、 最初のパーティションにインストールしたので、
  root=/dev/sdb1 ide0=serialize
と指定したいところですが、「デバイス名が不正です」と言われてしまいます。
  root=(hd1,0)
とする(これでいいのか?)と、「ファイルシステムは ext2fs です」と出ます。
  kernel=(hd1,0)/zImage
では、
  Loading: [format: Linux-piggyback, setup=0x800, size=0x72bb0]
となるので、カーネルはそこから読んでいるようです。/boot/grub に、stage1、 stage2、menu.lst はコピーしています。/etc/fstab も、
  /dev/sdb3     swap    swap    defaults        1 1
  /dev/sdb1     /       ext2    defaults        1 1
  /dev/sdb2     /other  ext2    defaults        1 1
  none          /proc   proc    defaults        1 1
となっているので、正常のようです。ブート時に表示されるメッセージを見ても、 各ディスクの各パーティションは正しく認識されているようです。

[回答]
+ >>   root=(hd1,0)
+ >> とする(これでいいのか?)と、「ファイルシステムは ext2fs です」と出ます。
+ 多分それでいいと思います。
+ >>   kernel=(hd1,0)/zImage
+ ここで、
+ kernel=(hd1,0)/zImage root=/dev/sdb1
+ とすれば、多分 / が mount できることと思います。
+ (マニュアルにきちんと書いてなかったですね。)
grub では,Linux カーネルに渡すパラメータは kernel=... の後に空白で 区切りながら付加していくようです.

結局、grub の e コマンドで、ブートメニューを編集して、何とか login まで 辿り着けました。現在は、menu.lst のエントリを

title = Slackware 3.4
root = (hd1,0)
kernel = /zImage root=/dev/sdb1 ro ide0=serialize
として、簡単にブートできるようになりました。

[コメント]
この ro ってところがよく分かりません

read only で / を mount するのは fsck を安全に行うためでは。 /etc/rc.d/ の中で rw で remount してるはずです。

21.2 grubからカーネルを起動できない?

[投稿者] 飯塚さん
[質問]
インストール用 boot floppy を用いて boot し、grub を使って HDD を / に mount しようと、grub のコマンドラインで、
kernel=(fd)/vmlinuz root=/dev/hda6 ide0=serialize
とやりましたが、コマンドラインに戻って来てしまう。

[回答]
e を押して編集したのならば、 return でメニューに戻った後 b でブート します。 c を押してコマンドラインにしたのなら原因が分かりません。

[コメント]
c からでしたら、
command>kernel=(fd)/vmlinuz root=/dev/hda6 ide0=serialize
(メッセージ)
command>boot
です。


前のページ 次のページ 目次