Arch Linux in virutalbox: kernel panic-not syncing: VFS: unable to mount root fs on unknown block(0,0)
I had a wrong fstab
generated by genfstab
(as pointed out here). So the kernel (please correct me, if this is wrong) didn't find my root-partition.
I generated fstab
with labels and had a partition with a space in it. In fstab this must be written with \040
. genfstab
wrote garbage for the space.
Other answeres suggest to run update-initramfs -u -k version
, however this command is replaced by mkinitcpio
.
To get the system running I did this:
- I ran
grub-mkcofnig -o /boot/grub/grub.cfg
(probably not important in this case) -
after that I booted into grub-menu and pressed c for the grub-shell I started Arch Linux manually by entering the following commands:
insmod linux insmod ext2 (this works for ext3 and ext4, too or enter your filesystem-driver) set root=(hd0, 2) (enter your partiton-number starting from 1) linux /boot/vmlinuz-linux root=/dev/sda2 (again select your partition) initrd /boot/initramfs-linux.img boot
correct
/etc/fstab
(make sure spaces are expressed as\040
)
Finished!
Related videos on Youtube
![Mpunkt Moeniac](https://i.stack.imgur.com/78wZ7.png?s=256&g=1)
Mpunkt Moeniac
I studied Mathematik mit Nebenfach Informatik und Informatik an der FAU in Erlangen.
Updated on September 18, 2022Comments
-
Mpunkt Moeniac almost 2 years
I installed Arch Linux from arch linux evolution-image to a virtual device. I tested the installation with GRUB MBR and GRUB efi.
Inside virtualbox, I can see the grub menu, but when I select Arch Linux it gives me a
Kernel panic - not syncing: VFS: unable to mount root fs on unknown block(0,0)
What is going wrong?
-
user2948306 almost 6 yearsSince you asked :). When you use an initrd, the kernel isn't what finds the root device. "unable to mount root fs on unknown block(0,0)" tends to mean an initrd wasn't (successfully) loaded when it needed to be. I wonder if you were missing an initrd at that point. If the initrd fails to find the root filesystem then it is different; the initrd tends to provide a nice little shell prompt, to see if you can do any better finding for it :). I researched this in the last section of my answer here: unix.stackexchange.com/questions/453272/…
-
Mpunkt Moeniac almost 6 years@sourcejedi ...and the
initrd
is found bygrub
(or any other bootloader), so thefstab
is not read at this point. I can’t tell with this much time in between anymore. But I understand, that you say, that the error message doesn’t match with what I‘ve diagnosed. -
Denys Vitali almost 6 yearsOr just check that you wrote
initrd
correctly in your config file. (Yeah, this is a note for my future-self)