Linux lives and dies by the kernel. If you’re familiar with how GNU/Linux works, Linux is the kernel. Everything else is just tools that interface with it. These tools let you get actual work done, but they couldn’t do a thing without the kernel.
The kernel of an operating system is kind of like your cardiovascular system. You tend to forget about it until something goes wrong. It isn’t all that often, but kernel upgrades can and do go wrong. When the updated kernel won’t let you use your computer, it’s time to downgrade.
Boot Into an Older Kernel
The good news if you’ve recently updated your kernel is that this process almost never gets rid of the old kernel. The only case where that may happen is if you immediately uninstalled the older kernel, which isn’t a great idea.
To boot into an older computer, you’ll need to restart your computer. When the computer loads GRUB, you may need to hit a key in order to select non-standard options. On some systems, the older kernels will be shown here, while on Ubuntu you’ll need to select “Advanced options for Ubuntu” to find older kernels.
Once you select the older kernel, you’ll boot into your system. Everything should work as it used to. If you’re still having trouble, the kernel may not be the issue.
Remove the Problem Kernel
If you’ve booted into your computer and everything is working as intended, the upgraded kernel is likely the problem. You could technically just do this every time you boot your computer, but it makes more sense to remove the problematic kernel.
You can do this using your distribution’s package management tools. This is going to differ based on the system you’re using. You’ll also need to know the version of the kernel you want to remove. This can be found during bootup at the GRUB screen. For Ubuntu and other apt-based distributions, you can use a command like the following:
You’ll need to replace
VERSION above with the exact version number of the problem kernel you’re looking to remove. If you just wish to hold them back for a time, you can use the following command:
Avoiding Future Issues
One of the easiest ways to avoid this type of problem is to avoid updating right away. This will give you a chance to see if any reports of users having kernel trouble will pop up. You should especially keep an eye out for users with similar hardware to you.
If stability is key to you, you can also opt to use LTS distributions. These update less frequently aside from security updates. This means you can count on these being more stable than your average distro.
While downgrading is the easiest way to deal with kernel-related issues, it isn’t the only way. Sometimes it’s not possible either. Maybe the updates kernel includes hardware support you desperately need, while the bug is related to hardware you don’t even use.
In that case, you’ll want to build your own kernel instead of relying on the version that your distribution ships. It isn’t exactly easy, but it’s not as tough as some people think. Just take a look at our guide to building a custom Linux kernel to see how you can get started.