In Ubuntu we can set different installed kernel version as default so that during next boot time Ubuntu can boot from that default kernel version as per requirement.
There can be many reason for setting different installed kernel version as default example:
- Ubuntu is unable to boot with current installed or upgraded kernel version.
- After upgrading some of modules like device hardware module unable to load.
And you may want to switch to old or previous kernel for troubleshooting kernel related issue. Below is the method for setting different kernel version as default.
- Make the backup of existing grub configuration file before making any changes in it so that in event of misconfiguration you can revert the old configuration from backup grub file.
charanjit@cj-per-laptop:~$ sudo cp -vp /etc/default/grub /etc/default/grub.bak.$(date +%d-%b-%Y) '/etc/default/grub' -> '/etc/default/grub.bak.08-Apr-2018' charanjit@cj-per-laptop:~$
- Open the /etc/default/grub file with desire text editor, here I am using nano in terminal.
charanjit@cj-per-laptop:~$ sudo nano /etc/default/grub
- Search the line “GRUB_DEFUALT” and update this line as: “Advanced options for Ubuntu>Ubuntu, with Linux <kernel version>” (where <kernel version> is the version of your desire kernel which you want to set as default) in front of “GRUB_DEFAULT” line.
- Below is my Sample modified /etc/default/grub configuration file:
# If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. # For full documentation of the options in this file, see: # info -f grub -n 'Simple configuration' GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 4.4.0-116-generic" GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=10 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX="" # Uncomment to enable BadRAM filtering, modify to suit your needs # This works with Linux (no patch required) and with any kernel that obtains # the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...) #GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef" # Uncomment to disable graphical terminal (grub-pc only) #GRUB_TERMINAL=console # The resolution used on graphical terminal # note that you can use only modes which your graphic card supports via VBE # you can see them in real GRUB with the command `vbeinfo' #GRUB_GFXMODE=640x480 # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux #GRUB_DISABLE_LINUX_UUID=true # Uncomment to disable generation of recovery mode menu entries #GRUB_DISABLE_RECOVERY="true" # Uncomment to get a beep at grub start #GRUB_INIT_TUNE="480 440 1"
- Save the grub configuration file and run the below command for generating modified grub2 configuration.
10,816 total views, 28 views today