Avoid missing kernel linux-modules-extra-XX-generic when updating kernel

I had this issue with sound Only "Dummy output" (sound) in Ubuntu 20.04 after reboot - Broken driver / module after a reboot. I was missing package linux-modules-extra-5.4.0-40-generic.

Now I rebooted again (I am not sure think I know if I also rebooted at some point in between), and I had no sound or wifi. I checked and now I have kernel 5.4.0-42.46, and I didn't have linux-modules-extra-5.4.0-42-generic. So I guessed there was an automatic kernel update (I don't recall doing it myself), without installing that package, waiting for me to reboot and suffer from the missing package.

My questions are:

  1. Why would an automatic kernel update not install linux-modules-extra?
  2. Can I configure my system to have the package installed whenever an update takes place?

Related:

Kernel modules missing after update to 5.4.0-37

What is the linux-image-extra package for and do I need it?


Solution 1:

You need to have linux-generic meta package installed.

It will pull all other necessary kernel packages including modules, modules-extra, headers, etc.

This package may be missing if you manually removed some kernel packages.

To fix issues with missing kernel packages run in a terminal:

sudo apt install linux-generic

Solution 2:

This problem happens when a system that was upgraded, but the hardware modules got moved to the HWE layer. APT will keep the auto-install marked for the linux-generic meta package, but you need it to instead use linux-generic-hwe-20.04 meta, so that linux-modules-extra-... and linux-headers-generic-hwe... are installed automatically.

Fix it by running

sudo apt install linux-generic-hwe-20.04