Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Fast to the point..

I have installed on my dystem a copy of Fedora 15 and Ubuntu 11.04. I first installed ubuntu on /dev/sda5 and grub2 was instaled at the begining of /dev/sda. Next i installed Fedora on /dev/sda6 and following a few recomendations i installed his boot system at the begining of /dev/sda6. After this, grub couldnt show me the information of my Fedora installation, but i entered ubuntu and applied update-grub, and when i restarted i could enter to Fedora. The problem is that when i updated my Fedora distro from 2.6.38.6-26.rc1.fc15 to 2.6.40-4.fc15 and i applied update-grub on ubuntu after that. At the moment that i want to run the new kernel on grub it appears this Kernel Panic. I dont know what to do, since i found a lot of information about this problem but none applied to this case specificly. If you need more details just ask.

Update:

This are the entries in the file /boot/grub/grub.cfg which is created after running update-grub.

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Fedora (2.6.40-4.fc15.x86_64) (on /dev/sda6)" --class gnu-linux --class gnu --class os {
    insmod part_msdos
    insmod ext2
    set root='(/dev/sda,msdos6)'
    search --no-floppy --fs-uuid --set=root 459a7d80-cc8f-4ae0-89cf-49593a9221e2
    linux /boot/vmlinuz-2.6.40-4.fc15.x86_64 ro root=UUID=459a7d80-cc8f-4ae0-89cf-49593a9221e2 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=la-latin1 rhgb quiet
}
menuentry "Fedora (2.6.38.6-26.rc1.fc15.x86_64) (on /dev/sda6)" --class gnu-linux --class gnu --class os {
    insmod part_msdos
    insmod ext2
    set root='(/dev/sda,msdos6)'
    search --no-floppy --fs-uuid --set=root 459a7d80-cc8f-4ae0-89cf-49593a9221e2
    linux /boot/vmlinuz-2.6.38.6-26.rc1.fc15.x86_64 ro root=UUID=459a7d80-cc8f-4ae0-89cf-49593a9221e2 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=la-latin1 rhgb quiet
    initrd /boot/initramfs-2.6.38.6-26.rc1.fc15.x86_64.img
}

The kernel that's not working is the first one. The only difference i see is that the working kernel has an initrd instruction. I tried to replicate this in the non-working kernel, changing the kernerl value but it didn't work. I hope this could be of some help.

Regards.

share|improve this question

4 Answers 4

up vote 2 down vote accepted

The line initrd /boot/initramfs-kernel.version.img is telling grub where to find the initial RAM disk to be used by the kernel when booting. During the boot process the Linux kernel mounts the initrd RAM disk, which contains a temporary filesystem, some kernel modules, and other utilities needed for the boot process. If the the RAM disk can't be mounted for some reason, the result is a kernel panic.

You can check to see if the correct RAM disk image was created during your upgrade by simply seeing if it exists in the /boot directory. If there is no file for your new kernel, or if it exists but is somehow corrupted, you can generate a new one with the dracut command.

Here's the Fedora 15 docs for a manual kernel upgrade, an IBM article about initrd, and an IBM article about the Linux boot process.

share|improve this answer

If Ubuntu found both Fedora kernels and you could boot one but not the other, compare both entries on the GRUB2 prompt. Seems to me that the new Fedora kernel points to different partition.

share|improve this answer
    
I have compared both entries and are almost identical, i will update the question wuth this information. –  Marco Antonio Aug 3 '11 at 22:39

I booted with an old kernel and tried dracut for the new one! At least several tries and no solution! so i found another workaround.

Simply invoke this command in the terminal:

yum reinstall kernel

this rebuilds the latest kernel and (great) a new initrd, now boot completes

share|improve this answer
    
This might not work on Fedora; the kernel package can not be reinstalled. Instead what you have to do is UN-install whichever kernel package you want to rebuild using yum remove kernel-x.x.x and then install it again. See mattiasgeniar.be/2012/07/23/… –  Dmitri Oct 15 at 3:03

I edited grub.conf I added boot=/dev/sda2 before the kernel information. your partition may be different. It took me three days of trial and error to figure this out.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.