Kernel Panic: VFS: unable to mount root on 08:08, on first boot right after slack...
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Kernel Panic: VFS: unable to mount root on 08:08, on first boot right after slack...
good evening everyone,
i am rather tired after 12hours of countless tries to install slackware 10.2 on a pc that has winXP and used to have slackware too.
the problem is that as soon as i finish the installation and i reboot, lilo pops up nicely (last try i even attempted to let lilo configure itself on its own, i only checked that it would put itself in the MBR - master boot record), and gives me the options to boot windows or linux, if i choose linux somebit later on, boot stops and i get an error.
Kernel Panic: VFS: unable to mount root at /dev/sda8 or 08:08. please attempt to input another 'root=' option....
truth is this is my 3rd slackware 10.2 installation and my 2nd one of this specific machine, so i felt confident i could solve it. at this point however (After 12h) i think i really need some help.
here are the facts:
the system has a SATA drive and so i start the installation with sata.i . i do fdisk /dev/sda so i see the 3 ntfs particions sda1, sda5, sda6 and the linux swap sda7 and the linux sda8 partitions. i had already made a linux particion with partition magic from winxp. so no need to change smth with fdisk, i run setup and do it correctly i believe.. once it asks me what kernel to use i tell it to skip the step and keep the DEFAULT (is that right? i think it keeps sata.i ... right?)
then packages installations and finally liloconfig. i choose expert mode, place the boot file in MBR - i think at this point it asks about the location and says it has figured the location /dev/sda as being the correct one and that i i want i can change it), begin the lilo file (no addit. params.), add a linux partition (/dev/sda8), add a win partition, install lilo, and finally reboot.
so lilo pops up and i choose linux... and you know the rest... where do you think i've done fault?
nass
Distribution: Slackware, and of course the super delux uber knoppix universal live recovery cd
Posts: 429
Rep:
hmm sounds like its trying to mount the root partition without having the sata modules. Here is a guide patrick wrote for just your problem.
Quote:
Slackware initrd mini HOWTO
by Patrick Volkerding, volkerdi@slackware.com
Sat Sep 3 22:20:13 PDT 2005
This document describes how to create and install an initrd, which may be
required to use the 2.6 kernel. Also see "man mkinitrd".
1. What is an initrd?
2. Why to I need an initrd?
3. How do I build the initrd?
4. Now that I've built an initrd, how do I use it?
1. What is an initrd?
Initrd stands for "initial ramdisk". An initial ramdisk is a very small
Linux filesystem that is loaded into RAM and mounted as the kernel boots,
and before the main root filesystem is mounted.
2. Why do I need an initrd?
The usual reason to use an initrd is because you need to load kernel
modules before mounting the root partition. Usually these modules are
required to support the filesystem used by the root partition (ext3,
reiserfs, xfs), or perhaps the controller that the hard drive is attached
to (SCSI, RAID, etc). Essentially, there are so many different options
available in modern Linux kernels that it isn't practical to try to ship
many different kernels to try to cover everyone's needs. It's a lot more
flexible to ship a generic kernel and a set of kernel modules for it. The
generic 2.6 kernel in Slackware supports the ext2 filesystem (which is
used by the initrd), and also supports most IDE controllers (much like the
old bare.i kernel). So, if you have an IDE based system that uses the
ext2 filesystem, then you will not need to use an initrd to boot.
Otherwise, read on.
3. How do I build the initrd?
The easiest way to make the initrd is to use the mkinitrd script included
in Slackware's mkinitrd package. We'll walk through the process of
upgrading to the 2.6.13 Linux kernel using the packages found in
Slackware's testing/packages/linux-2.6.13/ directory.
First, make sure the kernel, kernel modules, and mkinitrd package are
installed (the current version numbers might be a little different, so
this is just an example):
Now you'll want to run "mkinitrd". I'm using reiserfs for my root
filesystem, and since it's an IDE system the reiserfs module will be
the only one I need to load:
mkinitrd -c -k 2.6.13 -m reiserfs
This should do two things. First, it will create a directory
/boot/initrd-tree containing the initrd's filesystem. Then it will
create an initrd (/boot/initrd.gz) from this tree. If you wanted to,
you could make some additional changes in /boot/initrd-tree/ and
then run mkinitrd again without options to rebuild the image. That's
optional, though, and only advanced users will need to think about that.
Here's another example: Build an initrd image using Linux 2.6.13
kernel modules for a system with an ext3 root partition on /dev/hdb3.
Note that you need both the jbd and ext3 modules to use ext3:
4. Now that I've built an initrd, how do I use it?
Now that you've got an initrd (/boot/initrd.gz), you'll want to load
it along with the kernel at boot time. If you use LILO for your boot
loader you'll need to edit /etc/lilo.conf and add a line to load the
initrd. Here's an example section of lilo.conf showing how this is
done:
The initrd is loaded by the "initrd = /boot/initrd.gz" line.
Just add the line right below the line for the kernel image you use.
Save the file, and then run LILO again ('lilo' at the command line).
You'll need to run lilo every time you edit lilo.conf or rebuild the
initrd.
Other bootloaders such as syslinux also support the use of an initrd.
See the documentation for those programs for details on using an
initrd with them.
Some SATA drives just simply will not detect correctly. I belive this is due to kind of "driver" (because I don't know the real term) type issue with the BIOS and the SATA controler. You might want to try different kernels and see what happens. Some times the SATA drive will show up as a SCSI.
Another thing to consider is the file system of the root partition. I don't think you mentioned what it is formated as. Is it a standard ext2 or ext3?
thank you both for the replies,
but really the problem here is that i can't boot to linux at all...
if i can't mount the root straight after the installation then i don't have any linux system to work on and tamper with the kernel. the fault must have been made during the installation and so it was.
apparently when the installation asked me which kernel to load i went and explicitly re-choose sata.i
that made it... phew!
thanks again
Ah. I thought you chose sata.i to begin with, but I missed the part where you said you skipped the kernel selection. Glad you got it working!
Quote:
if i can't mount the root straight after the installation then i don't have any linux system to work on and tamper with the kernel. the fault must have been made during the installation and so it was.
For future reference, the boot CD can be used as a recovery utility. Just fire it up, and when you get to the prompt:
Code:
mkdir /mnt/slack
mount /dev/sda1 -t auto /mnt/slack
chroot /mnt/slack
source /etc/profile #optional, but nicer looking
There is also a way to actually boot your system from the kernel on the CD, but I've never done it that way before. I think if you read the welcome text, it says how.
good evening everyone,
<snip>
here are the facts:
the system has a SATA drive and so i start the installation with sata.i . i do fdisk /dev/sda so i see the 3 ntfs particions sda1, sda5, sda6 and the linux swap sda7 and the linux sda8 partitions. i had already made a linux particion with partition magic from winxp. so no need to change smth with fdisk, i run setup and do it correctly i believe.. once it asks me what kernel to use i tell it to skip the step and keep the DEFAULT (is that right? i think it keeps sata.i ... right?)
<snip>
so lilo pops up and i choose linux... and you know the rest... where do you think i've done fault?
nass
Hi,
When you come to the kernel selection, try to select the kernel you wish to use. You will get the option to select from the cdrom and you should select the one you desire to use.
The error you get is that the root filesystem is not there. As others have pointed out you need to have the filesystem available at boot for the kernel. You could use the install cd1 to boot then mount your installation then chroot to it. Then create your initrd as per the /boot/README.initrd file. You could do a search on LQ as this has been covered a lot.
... to actually boot your system from the kernel on the CD...
to boot your HD from the slack CD just:
Code:
boot:sata.i root=/dev/sdaN # N = your root partition
I had this same/similar problem. Slack install did two things during my install, for some reason the generic kernel demanded a floppy drive to boot from, and 2nd all my fstab entries were listed as 'hda'.
You can either keep booting from the CD until you get it sorted out or boot from the CD once then copy /kernels/sata.i/bzImage to your /boot directory and update/run lilo.conf. With the fstab problem I could boot the generic sata.i kernel (?), but could not boot my own sata kernel.
I changed my fstab and lilo.conf to /dev/sdaN and it worked with my kernel.
Interestingly enough hdparam -i /dev/sda told me the mode was 'unknown' using sata.i , now I try to run:
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.