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.

Hey TecMint readers,

Exciting news! Every month, our top blog commenters will have the chance to win fantastic rewards, like free Linux eBooks such as RHCE, RHCSA, LFCS, Learn Linux, and Awk, each worth $20!

Learn more about the contest and stand a chance to win by sharing your thoughts below!

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.

Each tutorial at TecMint is created by a team of experienced Linux system administrators so that it meets our high-quality standards.

Join the TecMint Weekly Newsletter (More Than 156,129 Linux Enthusiasts Have Subscribed)
Was this article helpful? Please add a comment or buy me a coffee to show your appreciation.

23 Comments

Leave a Reply
  1. 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
    
    Reply
  2. “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.

    Reply
  3. 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.

    Reply
  4. 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

    Reply
    • 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….

      Reply
    • 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

      Reply
      • 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

        Reply
  5. 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

    Reply
  6. 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?

    Reply
    • 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.

      Reply
    • 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!

      Reply

Got Something to Say? Join the Discussion...

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.