How to Install Latest Linux Kernel 4.8 on Ubuntu 16.04

Linux kernel 4.8 was released on October 2, 2016. This tutorial is going to show you how to install Linux kernel 4.8 on Ubuntu 16.04 LTS.

Hightlights in this release includes:

  • Microsoft Surface 3 touchscreen support
  • Supports AMD OverDrive technology, which means you can overclock your AMD graphics card with Linux kernel 4.8.
  • The open source Nouveau driver now has initial support for Nvidia Pascal GPU architecture.
  • Raspberry Pi 3 Broadcom BCM2837 SoC is supported.
  • HDMI CEC (Consumer Electronics Control) is supported.
  • Btrfs ENOSPC enhancements

Install Linux Kernel 4.8 on Ubuntu 16.04 LTS

The following steps are also tested on Debian 8 Jessie, Deepin Linux 15.32, Linux Mint 18 and Elementary OS Loki. Ubuntu 16.10, which is scheduled to be released on October 13, includes Linux kernel 4.8 by default.

Fire up a terminal window (CTRL+ALT+T) and run the following commands to download Linux kernel 4.8 header and Linux kernel 4.8 image binaries from Ubuntu website.

For 64 bits system:

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.8/linux-headers-4.8.0-040800-generic_4.8.0-040800.201610022031_amd64.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.8/linux-headers-4.8.0-040800_4.8.0-040800.201610022031_all.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.8/linux-image-4.8.0-040800-generic_4.8.0-040800.201610022031_amd64.deb

For 32 bits system:

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.8/linux-headers-4.8.0-040800-generic_4.8.0-040800.201610022031_i386.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.8/linux-headers-4.8.0-040800_4.8.0-040800.201610022031_all.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.8/linux-image-4.8.0-040800-generic_4.8.0-040800.201610022031_i386.deb

Once the download is complete, install all of the above kernel packages with dpkg.

sudo dpkg -i linux*4.8*.deb

The Grub boot menu will be automatically updated during installation. Once they are installed, reboot your computer with the following command:

sudo shutdown -r now

The Ubuntu boot entry with Linux kernel 4.8 should be the first in Grub boot menu. To check your Linux kernel version, run this command:

uname -r

linux kernel 4.8 ubuntu 16.04

How to Remove Linux Kernel 4.8

If for any reason you want to uninstall it, then reboot your computer, select a previous kernel version from the Grub boot menu and run the below command to remove 4.8.

sudo apt remove 'linux-headers-4.8*' 'linux-image-4.8*'

That’s it! As always, if you found this post useful, then subscribe to our free newsletter or follow us on Google+, Twitter or like our Facebook page. Thanks for visiting!

Rate this tutorial
[Total: 29 Average: 2.8]

  • Mohammad

    Selecting previously unselected package linux-headers-4.8.0-040800.
    (Reading database … 187154 files and directories currently installed.)
    Preparing to unpack linux-headers-4.8.0-040800_4.8.0-040800.201610022031_all.deb …
    Unpacking linux-headers-4.8.0-040800 (4.8.0-040800.201610022031) …
    Selecting previously unselected package linux-headers-4.8.0-040800-generic.
    Preparing to unpack linux-headers-4.8.0-040800-generic_4.8.0-040800.201610022031_amd64.deb …
    Unpacking linux-headers-4.8.0-040800-generic (4.8.0-040800.201610022031) …
    Selecting previously unselected package linux-image-4.8.0-040800-generic.
    Preparing to unpack linux-image-4.8.0-040800-generic_4.8.0-040800.201610022031_amd64.deb …
    Examining /etc/kernel/preinst.d/
    run-parts: executing /etc/kernel/preinst.d/intel-microcode 4.8.0-040800-generic /boot/vmlinuz-4.8.0-040800-generic
    Done.
    Unpacking linux-image-4.8.0-040800-generic (4.8.0-040800.201610022031) …
    Setting up linux-headers-4.8.0-040800 (4.8.0-040800.201610022031) …
    Setting up linux-headers-4.8.0-040800-generic (4.8.0-040800.201610022031) …
    Examining /etc/kernel/header_postinst.d.
    run-parts: executing /etc/kernel/header_postinst.d/dkms 4.8.0-040800-generic /boot/vmlinuz-4.8.0-040800-generic
    Error! Bad return status for module build on kernel: 4.8.0-040800-generic (x86_64)
    Consult /var/lib/dkms/bcmwl/6.30.223.248+bdcom/build/make.log for more information.
    Setting up linux-image-4.8.0-040800-generic (4.8.0-040800.201610022031) …
    Running depmod.
    update-initramfs: deferring update (hook will be called later)
    Examining /etc/kernel/postinst.d.
    run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.8.0-040800-generic /boot/vmlinuz-4.8.0-040800-generic
    run-parts: executing /etc/kernel/postinst.d/dkms 4.8.0-040800-generic /boot/vmlinuz-4.8.0-040800-generic
    ERROR: Cannot create report: [Errno 17] File exists: ‘/var/crash/bcmwl-kernel-source.0.crash’
    Error! Bad return status for module build on kernel: 4.8.0-040800-generic (x86_64)
    Consult /var/lib/dkms/bcmwl/6.30.223.248+bdcom/build/make.log for more information.
    run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.8.0-040800-generic /boot/vmlinuz-4.8.0-040800-generic
    update-initramfs: Generating /boot/initrd.img-4.8.0-040800-generic
    W: Possible missing firmware /lib/firmware/radeon/hainan_k_smc.bin for module radeon
    W: Possible missing firmware /lib/firmware/radeon/oland_k_smc.bin for module radeon
    W: Possible missing firmware /lib/firmware/radeon/verde_k_smc.bin for module radeon
    W: Possible missing firmware /lib/firmware/radeon/pitcairn_k_smc.bin for module radeon
    W: Possible missing firmware /lib/firmware/radeon/tahiti_k_smc.bin for module radeon
    W: Possible missing firmware /lib/firmware/radeon/hawaii_k_smc.bin for module radeon
    W: Possible missing firmware /lib/firmware/radeon/bonaire_k_smc.bin for module radeon
    run-parts: executing /etc/kernel/postinst.d/unattended-upgrades 4.8.0-040800-generic /boot/vmlinuz-4.8.0-040800-generic
    run-parts: executing /etc/kernel/postinst.d/zz-update-grub 4.8.0-040800-generic /boot/vmlinuz-4.8.0-040800-generic
    Generating grub configuration file …
    Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
    Found linux image: /boot/vmlinuz-4.8.0-040800-generic
    Found initrd image: /boot/initrd.img-4.8.0-040800-generic
    Found linux image: /boot/vmlinuz-4.4.0-36-generic
    Found initrd image: /boot/initrd.img-4.4.0-36-generic
    done

  • Mark

    The following set of scripts makes this process MUCH easier:

    https://github.com/mtompkins/linux-kernel-utilities

    • Thanks for the suggestion. Mark 🙂 Will look into it.