Gentoo Archives: gentoo-amd64

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-amd64@l.g.o
Cc: gentoo-user@g.o
Subject: [gentoo-amd64] Re: Kernel panic - not syncing: VFS: Unable to mount root fs on unknown block(2,0)
Date: Sun, 11 Dec 2005 19:02:41
In Reply to: [gentoo-amd64] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown block(2,0) by Felipe Ribeiro
Felipe Ribeiro posted <439C7034.5040500@×××××.com>, excerpted below,  on
Sun, 11 Dec 2005 15:30:12 -0300:

> Hi all, > > I've just installed Gentoo 2005.1-r1 on my amd64 box and i've got this > problem while rebooting: > > Root-NFS: No NFS server available giving up. > VFS: Unable to mount root fs via NFS, trying floppy. > VFS: Insert root floppy and press ENTER > end-request: I/O error, dev fd0, sector 0 > VFS: Cannot open root device hda2 or unknown-block(2,0) > Please append a correct "root=" boot option. > Kerenel panic - not syncing: VFS: Unable to mount root fs on > unknown-block(2,0) > > > What should i do? is it a grub configuration problem? or kernel compilation? > > Here is my grub.conf > > # > # Sample boot menu configuration file > # > > # Boot automatically after 30 secs. > timeout 10 > > # By default, boot the first entry. > default 1 #SECOND > > # Fallback to the second entry. > fallback 1 > > #splashimage=(hd0,1)/grub/splash.xpm.gz > #GENTOO > title Gentoo Linux > root (hd0,1) > kernel /boot/bzImage-2.6.14 root=/dev/hda2 > #initrd /initrd.img > > # For booting Windows NT or Windows95 > title Windows XP > rootnoverify (hd0,0) > makeactive > chainloader +1 > # For loading DOS if Windows NT is installed > # chainload /bootsect.dos > > root (hd0,1) > setup (hd0)
Do you have a separate /boot partition, or is it on your root partition? As you have it setup, it tries to use (hd0,1), which means /dev/hda2 (grub is zero-based, remember), then you tell the kernel to use the same partition as it's root partition. If you have your /boot on root, that's what you want, and it IS apparently finding the kernel, or you wouldn't get that error -- the kernel loads but can't find it's root. If you have a separate partition for root and /boot, then that's wrong. You apparently have grub's root configured correctly (the root (hd0,1) line), or it wouldn't find the kernel -- it's the kernel's root= parameter that needs corrected. The other possibility, if /boot is on your root file system so it's not the above, is that you didn't properly configure the necessary stuff to load root, into the kernel, or your initrd/initramfs isn't working properly. I don't know much about initrd/initramfs, but under ordinary circumstances, you won't need that, as long as you've properly configured the file system type and the chipset drivers for your hard drive into the kernel itself, NOT as modules. -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman in -- gentoo-amd64@g.o mailing list