Ubuntu – How to find the current stable kernel (HWE) for 14.04.2

14.04kernelupgrade

This question is related to this one also. So I want to understand how do I find the last stable kernel for Ubuntu 14.04.2? Because with point release 2 it still confuses me. This is my current kernel:

apt-cache policy linux-image-`uname -r`
linux-image-3.16.0-30-generic:
  Installed: 3.16.0-30.40~14.04.1
  Candidate: 3.16.0-30.40~14.04.1
  Version table:
 *** 3.16.0-30.40~14.04.1 0
        500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main i386 Packages
        100 /var/lib/dpkg/status

As you know 14.04.2 is shipped with 3.16.0.30 kernel, though when I run:

apt-cache policy linux-image-generic

I get:

linux-image-generic:
  Installed: (none)
  Candidate: 3.13.0.52.59
  Version table:
     3.13.0.52.59 0
        500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main i386 Packages
        500 http://archive.ubuntu.com/ubuntu/ trusty-security/main i386 Packages
     3.13.0.24.28 0
        500 http://archive.ubuntu.com/ubuntu/ trusty/main i386 Packages

What's the point of installing linux-image-generic if it shows kernels older than I'm even currently running?

Next, if I run:

apt-cache policy linux-image* | grep -i 14.04.1

I'll get listed with lots of kernels newer than mine. e.g.:

Candidate: 3.16.0-36.48~14.04.1
     3.16.0-36.48~14.04.1 0

Candidate: 3.16.0-34.47~14.04.1
     3.16.0-34.47~14.04.1 0

And if I run:

sudo apt-get dist-upgrade

It does nothing, the kernel stays the same. How should I behave in this situation? Should I upgrade the kernel manually?

UPDATE

Thanks to @Oli I finally solved my issue that confused me for a long time. In point release 2 of 14.04 LTS to check the current available HWE kernel:

apt-cache policy linux-generic-lts-utopic

it'll relpy e.g.:

linux-generic-lts-utopic:
  Installed: 3.16.0.37.29
  Candidate: 3.16.0.37.29
   Version table:
 *** 3.16.0.37.29 0
        500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main i386 Packages
        500 http://archive.ubuntu.com/ubuntu/ trusty-security/main i386 Packages
        100 /var/lib/dpkg/status

If it has newer candidate you can upgrade it using the commands in the answer below.

Best Answer

  • LTS "point releases" often ship the latest hardware enablement stack. These are the Kernel, X server and graphics driver versions from the latest non-LTS, backported to the LTS. This allows people to keep using the same old software, supported for a long time, but with modern hardware support (and performance boosts from newer drivers/kernel/etc).

    But these improvements aren't automatic. 14.04 users have to opt-in with something like:

    sudo apt-get install --install-recommends linux-generic-lts-utopic xserver-xorg-lts-utopic libgl1-mesa-glx-lts-utopic libegl1-mesa-drivers-lts-utopic
    

    These meta-packages either install packages alongside (ie kernels) or replace older versions with provides metadata, in a way that stock 14.04 wouldn't auto-upgrade to. This is why linux-image-generic still points to the stock [but maintained] 14.04 Kernel version.

    Getting back to your question, to get the latest version —and keep getting regular updates— you need to install the latest HWE meta-package. These are keyed to the release they represent so there isn't a nice automated way of achieving this; you have to rub some brain cells together. Currently the latest is Utopic (Vivid should be here soonish) so for now, you can just run:

    sudo apt-get install --install-recommends linux-generic-lts-utopic
    

    Though I'd probably recommend taking X and your graphics drivers along for the ride too.