Jump to content
FluKex

grub single boot and kernel panic reboot

Recommended Posts

So, over the past while i have been working on getting a new kernel working on my system. The problem i was having is that the newer kernels i use are not loading the sata modules properly from the initrd images.

 

When trying to fix this i would run into the scnenario whereas, i reboot using the new kernel and if it kernel panics, i then have to file a ticket with my hosting provider to reboot the system and select the old kernel.

 

I have now found 2 ways around this that might be useful for anyone who does a lot of kernel testing.

 

1.) Booting once-only - (same as lilo -R)

 

In reference to http://www.gnu.org/software/grub/manual/gr...g-once_002donly

 

in grub.conf, add the following line to the beginning.

 

default saved

 

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 (2.6.20-FluKex.com)
       root (hd0,0)
       kernel /vmlinuz-2.6.20-FluKex.com ro root=LABEL=/ acpi=off 
       initrd /initrd-2.6.20-FluKex.com.img

 

If you want to have it so that 2.6.20-FluKex.com 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-FluKex.com)
       root (hd0,0)
       kernel /vmlinuz-2.6.20-FluKex.com ro root=LABEL=/ acpi=off panic=5
       initrd /initrd-2.6.20-FluKex.com.img

 

 

 

so the order of operations on this are as follows.

 

1.) Add new kernel to grub.conf

2.) set default=# in grub.conf to the failsafe kernel (the one you want it to try if the other fails)

3.) run the following:

echo "savedefault --default=1 --once" | grub --batch

4.) reboot

 

This will try the flukex.com kernel, and if it panics, it will reboot and use the normal default kernel.

 

BLAM works for me.

Share this post


Link to post
Share on other sites

btw, it looks as though fedora core 6 has removed the "grub-set-default" option and does not use the /boot/grub/default file. There are a few different methods on how to do a "once only" boot with grub, but unforuntately fedora can only do the 1 i posted above.

Share this post


Link to post
Share on other sites

agreed, thanks flukex for posting this

 

cheers

anyweb

Share this post


Link to post
Share on other sites

Nice ;)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...