How to Install Latest Kernel 5.0 in Ubuntu

Periodically new devices and technology coming out and it’s important to keep our Linux system kernel up-to-date if we want to get the most of out it.

Moreover, updating system kernel will ease us to take advantage of new kernel functions and also it helps us to protect ourselves from vulnerabilities that have been found in earlier versions.

Suggested Read: How to Upgrade Kernel in CentOS 7

Ready to update your kernel on Ubuntu and Debian or one of their derivatives such as Linux Mint? If so, keep reading!

Check Installed Kernel Version

To find the current version of installed kernel on our system we can do:

$ uname -sr

The following shows the output of the above command in a Ubuntu 18.04 server:

Linux 4.15.0-42-generic

Upgrading Kernel in Ubuntu Server

To upgrade the kernel in Ubuntu, go to http://kernel.ubuntu.com/~kernel-ppa/mainline/ and choose the desired version (Kernel 5.0 is the latest at the time of writing) from the list by clicking on it.

Next, download the .deb files for your system architecture using wget command.

Download Linux Kernel for 32-Bit System

$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000_5.0.0-050000.201903032031_all.deb
$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb
$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-image-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb
$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-modules-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb

Download Linux Kernel for 64-Bit System

$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000_5.0.0-050000.201903032031_all.deb
$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb
$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-image-unsigned-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb
$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-modules-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb

Once you’ve downloaded all the above kernel files, now install them as follows:

$ sudo dpkg -i *.deb
Sample Output
(Reading database ... 140176 files and directories currently installed.)
Preparing to unpack linux-headers-5.0.0-050000_5.0.0-050000.201903032031_all.deb ...
Unpacking linux-headers-5.0.0-050000 (5.0.0-050000.201903032031) over (5.0.0-050000.201903032031) ...
Preparing to unpack linux-headers-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb ...
Unpacking linux-headers-5.0.0-050000-generic (5.0.0-050000.201903032031) over (5.0.0-050000.201903032031) ...
Preparing to unpack linux-image-unsigned-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb ...
Unpacking linux-image-unsigned-5.0.0-050000-generic (5.0.0-050000.201903032031) over (5.0.0-050000.201903032031) ...
Selecting previously unselected package linux-modules-5.0.0-050000-generic.
Preparing to unpack linux-modules-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb ...
Unpacking linux-modules-5.0.0-050000-generic (5.0.0-050000.201903032031) ...
Setting up linux-headers-5.0.0-050000 (5.0.0-050000.201903032031) ...
Setting up linux-headers-5.0.0-050000-generic (5.0.0-050000.201903032031) ...
Setting up linux-modules-5.0.0-050000-generic (5.0.0-050000.201903032031) ...
Setting up linux-image-unsigned-5.0.0-050000-generic (5.0.0-050000.201903032031) ...
Processing triggers for linux-image-unsigned-5.0.0-050000-generic (5.0.0-050000.201903032031) ...
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-5.0.0-050000-generic
/etc/kernel/postinst.d/x-grub-legacy-ec2:
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-4.15.0-42-generic
Found kernel: /boot/vmlinuz-4.15.0-29-generic
Found kernel: /boot/vmlinuz-5.0.0-050000-generic
Found kernel: /boot/vmlinuz-4.15.0-42-generic
Found kernel: /boot/vmlinuz-4.15.0-29-generic
Replacing config file /run/grub/menu.lst with new version
Updating /boot/grub/menu.lst ... done

/etc/kernel/postinst.d/zz-update-grub:
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-5.0.0-050000-generic
Found initrd image: /boot/initrd.img-5.0.0-050000-generic
Found linux image: /boot/vmlinuz-4.15.0-42-generic
Found initrd image: /boot/initrd.img-4.15.0-42-generic
Found linux image: /boot/vmlinuz-4.15.0-29-generic
Found initrd image: /boot/initrd.img-4.15.0-29-generic
done

Once the installation is complete, reboot your machine and verify that the new kernel version is being used:

$ uname -sr
Verify Kernel Version in Ubuntu

Verify Kernel Version in Ubuntu

And that’s it. You are now using a much more recent kernel version than the one installed by default with Ubuntu.

Summary

In this article we’ve shown how to easily upgrade the Linux kernel on Ubuntu system. There is yet another procedure which we haven’t showed here as it requires compiling the kernel from source, which is not recommended on production Linux systems.

If you’re still interested in compiling the kernel as a learning experience, you will get the instructions on how to do it at the Kernel Newbies page.

As always, feel free to use the form below if you have any questions or comments about this article.

If You Appreciate What We Do Here On TecMint, You Should Consider:

TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.

If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.

Support Us

We are thankful for your never ending support.

Gabriel Cánepa

Gabriel Cánepa is a GNU/Linux sysadmin and web developer from Villa Mercedes, San Luis, Argentina. He works for a worldwide leading consumer product company and takes great pleasure in using FOSS tools to increase productivity in all areas of his daily work.

Your name can also be listed here. Got a tip? Submit it here to become an TecMint author.

RedHat RHCE and RHCSA Certification Book
Linux Foundation LFCS and LFCE Certification Preparation Guide

You may also like...

21 Responses

  1. Vitalii says:

    To install the latest kernel in Ubuntu with Kernel Update Utility as shown.

    $ sudo add-apt-repository ppa:teejee2008/ppa
    $ sudo apt-get install ukuu
    

    Disable access control with the following command:

    $ sudo xhost +
    $ sudo ukuu
    $ sudo ukuu --install-latest
    $ sudo reboot
    
  2. Ben in Seattle says:

    “On Ubuntu or one of their derivatives such as Debian”

    I believe you meant “on Ubuntu or related systems such as Debian…”

    If you feel you must specify the exact relationship, Ubuntu is a derivative of Debian GNU/Linux, not the other way around.

  3. Ahmed says:

    Thanks for this amazing walking through article, Unfortunately it can’t be installed in my system due to the missing some dependencies.

    Whats my choices?

    I am using the terminal because I am running into graphics card’s driver issue which required me to install the latest kernel.

  4. Rahul says:

    After downloading, when installing getting this error…..

    linux-image-unsigned-4.19.0-041900-generic depends on linux-modules-4.19.0-041900-generic; however:
    Package linux-modules-4.19.0-041900-generic is not installed.

    dpkg: error processing package linux-image-unsigned-4.19.0-041900-generic (–install):
    dependency problems – leaving unconfigured
    Errors were encountered while processing:
    linux-image-unsigned-4.19.0-041900-generic

    • james says:

      Same exact error here, using Linux Mint MATE v.19 which is up to date as of this morning, dec.02, 2018… so I’ll wget that module package if I find it. No idea….

    • james says:

      OK i tried posting a comment about this earlier, but anyway I have it working indeed, simply by adding a line for the modules package in just the same way the headers & image are printed above. At the moment, it seems that this line has been omitted upon some update to reflect the latest kernel.

      Anyway for some reason, the process failed when I downloaded the package with firefox, saying it wasn’t a deb-formatted package, or something. I had even tried changing the ownership to root:root. Anyway just copying the link address by visiting [http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.19/] and using sudo for wget, which ought not to be necessary, worked just fine.

      For the record, the kernel upgrade on my mint-MATE 19 laptop was necessary because even the 4.15 or so kernel that came with the mint download left the track pad unrecognized, unusable, dead.

      Using an external mouse occasionally is OK, but making that *mandatory* seemed worth this absurd little effort. It’s a 200-dollar laptop Lenovo 330-15igm. I’ve put in an ssd, and it all works now thanks to some help from TecMint :) Thanks

      • Josh Hedden says:

        James, thanks for the post on this because I had to do the exact same thing to fix mine.

        I got the same error as yours when I tried installing. I would also like to add that this fixed my driver issues with Ryzen and I now have 1920 x1080 resolution. xandr kept failing when I was trying to manually add my resolution.

        Updating the kernel is actually what fixed all of my resolution issues. I am using the Ryzen 2200 GPU for anyone interested in fixing the same issue (I was getting the “failed to get size of gamma for output” when using –newmode for xrandr).

        Here is exactly what I ran to get this to work (I am pretty sure these links are only for AMD so if you have intel you have to go to the website and select the ones for your system https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.19/.

        It seems the article is missing the modules install (You need the Linux headers, Linux image unsigned, and the modules file). This article actually has you install the headers twice which isn’t right. I would still like to say thank you to the person who wrote this blog and many others, it has helped me out more than you could imagine.

        $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20/linux-headers-4.20.0-042000-generic_4.20.0-042000.201812232030_amd64.deb
        $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20/linux-image-unsigned-4.20.0-042000-generic_4.20.0-042000.201812232030_amd64.deb
        $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20/linux-modules-4.20.0-042000-generic_4.20.0-042000.201812232030_amd64.deb
        $ sudo dpkg -i *.deb
        $ reboot
        

        Hopefully this helps someone else out! Enjoy!!!
        Josh

  5. abdou says:

    or you can use ukuu

  6. CHAD says:

    Might be a minor thing, but Ubuntu is a Debian derivative, not the other way around.

  7. Greg says:

    What is the linux-modules-*.deb file for?

  8. Yogesh says:

    Kernel version 4.12.x is released …

    wget kernel.ubuntu.com/~kernel-ppa/mainline/v4.12/linux-headers-4.12.0-041200_4.12.0-041200.201707022031_all.deb

    wget kernel.ubuntu.com/~kernel-ppa/mainline/v4.12/linux-headers-4.12.0-041200-generic_4.12.0-041200.201707022031_amd64.deb

    wget kernel.ubuntu.com/~kernel-ppa/mainline/v4.12/linux-image-4.12.0-041200-generic_4.12.0-041200.201707022031_amd64.deb

    sudo dpkg -i *.deb

  9. Muaad says:

    Thanks for this great tutorial.

    I updated the kernel easily, but Kubuntu 16.04 is telling me to download the 4.4.xx kernel, how to stop that?

    • Gabriel A. Cánepa says:

      Hi Muaad,
      I did not test this in Kubuntu, but in theory it should work. Can you post a screenshot of this message and indicate the step where it appears?
      Thanks.

    • Muaad says:

      Thanks for coming back to me, as it turns out I had my packages mixed up, a bit of house keeping and everything went back to normal!

    • Tommy says:

      install UKUU it will install and version kernel from the list in the program, easy and simple, enjoy

Got something to say? Join the discussion.

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.