익명 18:24

Set "older" kernel as default grub entry

Set "older" kernel as default grub entry

I installed a mainline kernel for testing purposes. I would like to set grub to boot from the older kernel by default.

I know I can set the GRUB_DEFAULT=0 setting for the first page of grub but how do I set it to boot by default from one kernel in the second page (Advanced page)?

I would prefer doing this without installing other software (ex. grub-customizer).

Related Questions:
How do I set Windows to boot as the default in the boot loader?
How do I change the grub boot order?



Top Answer/Comment:

First, make a backup copy of /etc/default/grub. If something goes wrong, you can easily revert to the known-good copy.

sudo cp /etc/default/grub /etc/default/grub.bak

Then edit the file using the text editor of your choice (e.g. gedit, etc.).

sudo -H gedit /etc/default/grub

Find the line that contains GRUB_DEFAULT - this is what you'll want to edit to set the default. You must know the full name of the kernel you want - e.g. Ubuntu, with Linux 3.13.0-53-generic - along with the full name of the "advanced menu" - e.g. Advanced options for Ubuntu.

You then combine those two strings with > and set GRUB_DEFAULT to them as: GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 3.13.0-53-generic" (including quotes).

Save it, then build the updated grub menu.

sudo update-grub

See also: GNU GRUB Manual 2.02 or more specifically section 15.1.0 on setting the default.


Note: There is a method utilizing numbers to access kernels and menus but this is not recommended as it is unreliable when kernel updates occur.

상단 광고의 [X] 버튼을 누르면 내용이 보입니다