No, you’re not having a déjà vu, this is my second post about GRUB2/BURG support for KDM which shows up in PlanetKDE. I am sorry to abuse the planet for publicity, but I have seen quite a bit of confusion as to how KDE should be configured in order to interface with GRUB2/BURG and I would like to get some things straight.
What follows is a step-by-step guide describing how to configure KDE in order to automatically select a GRUB2/BURG entry other than the default when rebooting:
If you are a GRUB2 user skip the BURG instructions and vice versa.
Step 1. Inform GRUB2/BURG that you plan to use this feature:
GRUB2 instructions:
Open /etc/default/grub in the text editor of your preference (as root) and add the following:
GRUB_DEFAULT=saved
In case a GRUB_DEFAULT option already exists, just set it to “saved”.
BURG instructions:
Edit /etc/default/burg instead. The variable name is the same (GRUB_DEFAULT).
Step 2. Update your GRUB2/BURG menu file:
GRUB2 instructions:
The menu configuration file must contain set default=”${saved_entry}”. You are highly discouraged to manually edit this file, so execute the following command (as root):
grub-mkconfig -o /boot/grub/grub.cfg
Please note that some distributions (i.e. Fedora, Gentoo, Mandriva, openSUSE) use a slightly different naming scheme for GRUB2. So you’d have to adjust the above to the following:
grub2-mkconfig -o /boot/grub2/grub.cfg
BURG instructions:
BURG users should execute the following command (as root):
burg-mkconfig -o /boot/burg/burg.cfg
Step 3. Inform KDE that you are using GRUB2/BURG:
GRUB2/BURG instructions:
Select “Grub2″ as your bootloader under “System Settings > Login Screen > Shutdown > Boot manager”.
Step 4. Create symlinks:
GRUB2 instructions:
This step only applies to Fedora/Gentoo/Mandriva/openSUSE (or any other distribution which uses /boot/grub2 instead of /boot/grub)! If this is not the case for you, skip it.
Execute the following commands (as root):
mkdir /boot/grub
ln -s /boot/grub2/grub.cfg /boot/grub/grub.cfg
ln -s /sbin/grub2-reboot /sbin/grub-reboot
In the above commands replace /sbin/ with wherever the grub2-reboot binary is installed. You can easily determine this with “which grub2-reboot”.
BURG instructions:
Execute the following commands (as root):
mkdir /boot/grub
ln -s /boot/burg/burg.cfg /boot/grub/grub.cfg
ln -s /sbin/burg-reboot /sbin/grub-reboot
Same rule as above applies here: if the burg-reboot binary is not located under /sbin/, locate it with “which burg-reboot”.
Step 5. Reboot!
That’s it; you’re done! Now either reboot or restart KDM (something like “/etc/init.d/kdm restart”) and you’re all set
As a side note, GRUB2 Editor (supports BURG) automatically adjusts your configuration to the above. If you’re using it, you won’t have to do anything at all (other than step 4 for the distributions affected and BURG installations).
Feel free to link to this post in linux forums as a reference. All of the above refer to KDE >= 4.7.
Edit #1: Instructions updated to include BURG.
Edit #2: Fix text formatting.

What about burg, would You like to give to us some advises???
thx
Instructions updated to include BURG.
Thanks, this works great on Kubuntu 11.10 and 12.04, very useful for multi-booting between my regular and test setups
Glad to know
First of all, thanks for the article.
I unfortunately have a problem. After following these steps I do get the option to choose which system to reboot into in KDE and it does reboot, but once BURG loads up it doesn’t skip the selection screen, I still have to choose an entry.
I’m using Arch Linux and BURG.
This is the expected behaviour. It doesn’t skip the selection screen, it just changes the default entry for one reboot.
Thanks for your reply.
I remember when I used Mandriva 2006 or openSUSE 10 or something like that, this worked out-of-the-box with KDE 3.* and when using this feature it completely skipped the grub selection screen. I was using grub(1) at the time.
Is there a way to make burg do that?
Well, no, as far as I know. You would have to create a script that 1) sets the value of GRUB_TIMEOUT variable to 0 in /etc/default/burg (for instant boot) 2) regenerates the /boot/burg/burg.cfg menu file and 3) runs burg-reboot with the entry you want to reboot once. Then it would have to revert to the old value when booting back in your linux distro and re-regenerate your menu file. But that would be too much of a hassle.
For my personal use with this feature I have set a very low GRUB_HIDDEN_TIMEOUT (3 seconds) and 0 GRUB_TIMEOUT. I can live with 2-3 seconds waiting.
For a cleaner approach you should contact upstream (BURG – GRUB2 actually) and file a wishlist report.
I just noticed that it doesn’t even select the default. It’s always the same default.
If you would like further investigation, post your configuration files (/etc/default/burg, /boot/burg/burg.cfg, /boot/burg/burgenv) and let me know if you have performed proper linking (as explained in step 4). Prefer a pastebin service such as http://pastebin.com/
I spoke too soon. Everything works fine. The problem was that burg has two views and one of them hides all the fallback options. I had this one selected, but the restart dropdown in KDE shows all the options. I selected the last one which was saved into /boot/burg/burgenv as 3. The problem was that with the fallback options hidden there was no fourth option, there were only two.
Thanks for your help.