Showing posts with label Boot Kernel. Show all posts
Showing posts with label Boot Kernel. Show all posts

Monday, August 2, 2010

How to Boot second kernel if first fails?

If for example your grub.conf looks like the one i have below. This boots into the 2.6.20-1.2944 by default.


default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Fedora Core (2.6.20-1.2944.fc6)
        root (hd0,0)
        kernel /vmlinuz-2.6.20-1.2944.fc6 ro root=LABEL=/ acpi=off
        initrd /initrd-2.6.20-1.2944.fc6.img
title Fedora Core
        root (hd0,0)
        kernel /vmlinuz-2.6.20 ro root=LABEL=/ acpi=off
        initrd /initrd-2.6.20.img


If you want to have it so that 2.6.20 boots on next boot, run the following command from the console before rebooting.


echo “savedefault –default=1 –once” | grub –batch
then
reboot


Now, if you have a kernel that panics and need it to reboot if it panics. change your config and add the panic=# (# being seconds before auto reboot) to the kernel line. Example file below


default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Fedora Core (2.6.20-1.2944.fc6)
        root (hd0,0)
        kernel /vmlinuz-2.6.20-1.2944.fc6 ro root=LABEL=/ acpi=off panic=5
        initrd /initrd-2.6.20-1.2944.fc6.img
title Fedora Core (2.6.20)
        root (hd0,0)
        kernel /vmlinuz-2.6.20 ro root=LABEL=/ acpi=off panic=5
        initrd /initrd-2.6.20.img


so the order of operations on this are as follows.


- Add new kernel to grub.conf
- set default=# in grub.conf to the failsafe kernel (the one you want it to try if the other fails)
- run the following:


echo "savedefault --default=2 --once" | grub --batch; reboot