Fedora 22 upgrade - Kernel Panic - not syncing: VFS Unable to mount root FS on unknown-block(0 0)


After upgrading from Fedora 21 to Fedora 22 I experienced a kernel panic on booting into the new, 4.0.2 kernel with the message given in the title "VFS Unable to mount root FS on unknown-block(0,0)".

Long story short - looking into /boot there was the vmlinuz kernel, vmlinuz-4.0.2-300.fc22.x86_64, but no corresponding initramfs-4.0.2-300.fc22.x86_64.img file. Also in the grub.cfg stanza there was a missing reference to the .img file i.e.
  initrd16 /initramfs-4.0.2-300.fc22.x86_64.img
was missing.

Again, in the interest of brevity, I ran dracut manually on the 4.0.2 kernel and it errored - complaining about "no module bootchart found".

(Bootchart is a package I had installed previously that attempts to measure or profile time spent during booting - I'm assuming that F22 dracut does not have the needed support.)

Fortunately Dracut has an option to ignore arbitrary modules e.g. bootchart with the parameter -o.

So the fix was ultimately to do something like:

#dracut --force --regenerate-all -o bootchart
#grub2-mkconfig --output=/boot/grub2/grub.cfg

and then later when I could boot into the new kernel

#dnf remove bootchart-daemon

There was a bit more trial and error then I have described here with some false starts but my conclusion is that {Fedora22/4.0.x} Dracut does not support "bootchart".  As a conseqeuence the initramfs was not built during the upgrade. Regenerating the initramfs using the -o bootchart option allowed me to correct this issue.

Comments

Popular posts from this blog

Hit failing alternator with a hammer to confirm diagnosis of failing alternator due to bad brushes

alternatives --install gets stuck: failed to read link: No such file or directory

Using SSH, SOCKS, tsocks, and proxy settings to create a simultaneous "dual use" work/home computer