LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   slackware 14.1 - kernel panic - unable to mount root fs (http://www.linuxquestions.org/questions/slackware-14/slackware-14-1-kernel-panic-unable-to-mount-root-fs-4175489134/)

joshua60 12-25-2013 11:41 AM

slackware 14.1 - kernel panic - unable to mount root fs
 
Hi,

I'm getting kernel panic on boot after successful installation of slackware 14.1. current, it tells:

no fs could mount to, tried: romfs
kernel panic not syncing VFS: unable to mount fs on unknown block
CPU:0 PID: 1 Comm: swapper Not tainted 3.10.17 #1
HW name:ASUS All Series/Z87-K, BIOS 0903 10/25/2013

thanks for your help!

business_kid 12-26-2013 03:47 AM

Quote:

no fs could mount to, tried: romfs
It boots the kernel, then wants to mount the root filesystem. It's stuck there.
Your kernel can only read romfs, which means it can't do ext4. It can't find a romfs file system. At a guess, that kernel needs an initrd. If you just boot the huge kernel, it should run with no initrd.

joshua60 12-26-2013 10:26 AM

thanks for your hint, business_kid.

I looked at grub.cfg and noticed that: (I'm running a multiboot system!)

linux /boot/vmlinuz-generic-3.10.17 root=/dev/sda8 gives a kernel panic but ...

linux /boot/vmlinuz-huge-3.10.17 root=/dev/sda8 does'nt!

Didier Spaier 12-26-2013 10:40 AM

Quote:

Originally Posted by joshua60 (Post 5087180)
linux /boot/vmlinuz-generic-3.10.17 root=/dev/sda8 gives a kernel panic but ...

linux /boot/vmlinuz-huge-3.10.17 root=/dev/sda8 does'nt!

That's simply because -generic Sackware kernels do not have support for ext4 file system built-in, and at time access to your root partition is attempted, no kernel module is loaded yet, unless it be contained in the initrd.

So:
  • either stay with a huge kernel
  • or if you want to use a generic one, make an initrd including support for your root file system
See /boot/README.initrd for an how-to.

gengisdave 12-26-2013 10:42 AM

generic version has ext4 compiled as a modules, while in the huge version is builtin compiled. You may be missing kernel-modules package, but it's more obvious that kernel can't read an ext4 fs to load the ext4 module :) (initrd is strictly required)

GNU/Linux 12-26-2013 12:36 PM

As stated you need initrd. mkinitrd package includes a script (/usr/share/mkinitrd/mkinitrd_command_generator.sh) that will give you the required command to generate mkinitrd.

joshua60 12-27-2013 04:27 AM

I'll keep 'huge' for the time being, thanks so much!

TSquaredF 12-27-2013 11:55 AM

There is a trend of people using the 'huge' kernels for everyday work. But, this is not recommended. From "Changes & Hints.txt":
Quote:

Use one of the provided generic kernels for daily use. Do not report bugs until/unless you have reproduced them using one of the stock generic kernels. You will need to create an initrd in order to boot the generic kernels - see /boot/README.initrd for instructions.
The huge kernels are primarily intended as "installer" and "emergency" kernels in case you forget to make an initrd.
As noted above, using "/usr/share/mkinitrd/mkinitrd_command_generator.sh" makes creating an initrd a trivial exercise.
Regards,
Bill


All times are GMT -5. The time now is 01:02 PM.