Sometimes we need to install the latest kernel version of our linux distro (btw it is called “mainline” if you need to google something about it)! Whether we need the latest driver, because we bought a new laptop released for the first time last month with the latest hardware or there is a hot fix of some nasty bug it is of no matter. Here are the steps (and some troubleshooting) about installing the latest kernel to our Ubuntu install 17.10 (with old versions like 16, 15 and 14 should be the same):
- STEP 1 is to choose our desired kernel from
http://kernel.ubuntu.com/~kernel-ppa/mainline/
Open this address in your favorite browser and choose the latest. In our example the latest kernel, which is no release candidate, 4.14.15. Enter the directory
http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15.1/
and choose your build, for example amd64 for your 64bit setup (and for most cases choose -generic- one)
mkdir /root/latestkernel cd /root/latestkernel wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15.1/linux-headers-4.15.1-041501_4.15.1-041501.201802031831_all.deb wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15.1/linux-headers-4.15.1-041501-generic_4.15.1-041501.201802031831_amd64.deb wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15.1/linux-image-4.15.1-041501-generic_4.15.1-041501.201802031831_amd64.deb
- STEP 2 after successfully downloading the 3 files just install them with “dpkg” (the package manager tool)
sudo dpkg -i linux-headers-4.15.1*.deb linux-image-4.15.1*.deb
- STEP 3 is just to reboot your machine, the installation setup did everything you needed to load this kernel
reboot
STEP 4 Verification of running the latest kernel
root@srv:~# uname -a Linux srv.local 4.15.1-041501-generic #201802031831 SMP Sat Feb 3 18:32:13 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Install log of the procedure (your output may vary depending on your hardware installed in your system):
root@srv:~/latestkernel# sudo dpkg -i linux-headers-4.15.1*.deb linux-image-4.15.1*.deb Selecting previously unselected package linux-headers-4.15.1-041501. (Reading database ... 200430 files and directories currently installed.) Preparing to unpack linux-headers-4.15.1-041501_4.15.1-041501.201802031831_all.deb ... Unpacking linux-headers-4.15.1-041501 (4.15.1-041501.201802031831) ... Selecting previously unselected package linux-headers-4.15.1-041501-generic. Preparing to unpack linux-headers-4.15.1-041501-generic_4.15.1-041501.201802031831_amd64.deb ... Unpacking linux-headers-4.15.1-041501-generic (4.15.1-041501.201802031831) ... Selecting previously unselected package linux-image-4.15.1-041501-generic. Preparing to unpack linux-image-4.15.1-041501-generic_4.15.1-041501.201802031831_amd64.deb ... Examining /etc/kernel/preinst.d/ run-parts: executing /etc/kernel/preinst.d/intel-microcode 4.15.1-041501-generic /boot/vmlinuz-4.15.1-041501-generic Done. Unpacking linux-image-4.15.1-041501-generic (4.15.1-041501.201802031831) ... Setting up linux-headers-4.15.1-041501 (4.15.1-041501.201802031831) ... Setting up linux-headers-4.15.1-041501-generic (4.15.1-041501.201802031831) ... Setting up linux-image-4.15.1-041501-generic (4.15.1-041501.201802031831) ... 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.15.1-041501-generic /boot/vmlinuz-4.15.1-041501-generic run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.15.1-041501-generic /boot/vmlinuz-4.15.1-041501-generic update-initramfs: Generating /boot/initrd.img-4.15.1-041501-generic run-parts: executing /etc/kernel/postinst.d/unattended-upgrades 4.15.1-041501-generic /boot/vmlinuz-4.15.1-041501-generic run-parts: executing /etc/kernel/postinst.d/update-notifier 4.15.1-041501-generic /boot/vmlinuz-4.15.1-041501-generic run-parts: executing /etc/kernel/postinst.d/zz-update-grub 4.15.1-041501-generic /boot/vmlinuz-4.15.1-041501-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.15.1-041501-generic Found initrd image: /boot/initrd.img-4.15.1-041501-generic Found linux image: /boot/vmlinuz-4.14.15-041415-generic Found initrd image: /boot/initrd.img-4.14.15-041415-generic Found linux image: /boot/vmlinuz-4.13.0-32-generic Found initrd image: /boot/initrd.img-4.13.0-32-generic Found linux image: /boot/vmlinuz-4.13.0-21-generic Found initrd image: /boot/initrd.img-4.13.0-21-generic Found memtest86+ image: /boot/memtest86+.elf Found memtest86+ image: /boot/memtest86+.bin done root@srv:~/latestkernel#
One thought on “How to install the latest linux kernel (mainline) in Ubuntu (17.10) distro”