I encountered this bug While running
5.13.0-25-generic. The bug for me was related to the
5.11.0-46-generic Linux kernel. I have unfortunately lost the exact error message I recieved on my system due to a reboot, but in general the error message was the following, which I encountered during an upgrade. (taken from the comment on the bug linked above)
sudo apt upgrade Error! The /var/lib/dkms/backport-iwlwifi/8324/5.4.0-77-generic/aarch64/dkms.conf for module backport-iwlwifi includes a BUILD_EXCLUSIVE directive which does not match this kernel/arch. This indicates that it should not be built. Skipped.
After some searching, I found a topic on Linux Mint Forums that led me to reinstalling my
First, be sure that you have any kernel installed that isn't producing errors. For me,
5.11.0-46-generic was giving errors but I was actually on
5.13.0-25-generic so no issue there. If you are on the faulty kernel, just run the following commands to install a different kernel version.
For the sake of the example, I will install
5.11.0-44-generic in the following commands.
# Search for all Linux kernel images >= 5.10.0 apt search linux-image-5.1 generic # Install 5.11.0-44-generic image and headers sudo apt install linux-image-5.11.0-44-generic linux-headers-5.11.0-44-generic # Important! This updates grub entries with the new kernel # + In the next step, we use this new entry to boot into a different kernel sudo update-grub
Run the following command to edit your GRUB config.
Now, read the header comment and notice the recommendation to run the command
info -f grub -n 'Simple configuration'. This is useful, and can provide more information on these settings if needed. For swapping a kernel, we don't need to get too crazy. We just need to make sure that GRUB is displayed, and that the timeout is not set to 0.
For me, this was the default configuration. This results in GRUB not being displayed with no timeout. Makes for quick reboots, but does not allow us to boot from a different kernel.
GRUB_DEFAULT=0 GRUB_TIMEOUT_STYLE=hidden GRUB_TIMEOUT=0 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX=""
Change the settings to something like the below. The lines to node are
GRUB_DEFAULT=0 GRUB_TIMEOUT_STYLE=menu GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX=""
This will show the GRUB menu for 5 seconds on boot. If you don't press a key in 5 seconds, the system will boot. Save and exit this file with the new changes applied, then again run the following commands to updat GRUB and reboot.
sudo update-grub reboot
When GRUB is displayed, you can select
Advanced Options for Ubuntu. Select
Advanced Options for Ubuntu and then select any kernel version (NOT safe mode). This will boot Ubuntu with that Linux kernel, and now we've detached ourselves from the faulty kernel.
Once you're at a terminal in your desktop again, you can run the following commands to remove the kernel and reinstall it.
sudo apt remove linux-image-5.11.0-46-generic linux-headers-5.11.0-46-generic sudo apt install linux-image-5.11.0-46-generic linux-headers-5.11.0-46-generic sudo update-grub
That's it! For me, this fixed the specific issue I noted at the top of the page, but you could want to do this for various reasons so I thought it was useful to document it. After the install is complete and you've updated GRUB, you can reboot back into the default
Ubuntu selection in the GRUB menu.
Also noteworthy, I encountered this issue on an XPS 9310 using dell PPAs for some drivers. These PPAs just happened to target the kernel I removed, and at some point while debugging this I ran an update with
--autoremove, so I also removed the
oem-somerville-melisa-meta package in the process. This meant that I removed the keys for the PPA that was still in my apt sources. I was getting warnings about unable to update the PPA during
apt update. I solved by reinstalling the
oem-somerville-melisa-meta package. After this, everything was good!
sudo apt remove oem-somerville-melisa-meta sudo apt install oem-somerville-melisa-meta