The Situation
I saw one of those icons on the taskbar this morning labeled, “Updates: Security updates available” and, naturally, clicked on it to open Discover, then did the update. However, when I rebooted, my machine went into emergency mode and wouldn’t boot.
I did a three-finger reset and booted from an older kernel and did some digging. Turns out, the update installed the vmlinuz-7.2.6-200.fc44.x86_64 kernel and it doesn’t work… at least, not for my Gigabyte A16 laptop. I reconfigured the default kernel and set it to the previous one (/boot/vmlinuz-7.2.5-200.fc44.x86_64) so I at least have a working system again.
My Questions
Are there steps I can take to avoid this in the future where an update is announced, but it blows up my system?
Is there a way I can tell test an update to make sure it isn’t going to do this?
Would the results have been different if I’d used dnf in a terminal instead?
Is there a way to remove the broken kernel? (Obviously, it’s of no use.)
From decades of linux experience, problems with new kernels are often caused by things like running out of mass storage space, outdated firmware, or mass storage errors, so you should check the “health” and free space of your mass storage devices. Note that for btrfs you need to look at btrfs fi df /. The journal often has details, if you are not familiar with journalctl, see https://docs.fedoraproject.org/en-US/quick-docs/viewing-logs/.
If your hardware is in good working order, you may get help from others with access to similar hardware, so you should post the output from running inxi -ezxx in a terminal using the ‘</>` pre-formatted text button.
It is not possible to predict if a kernel will fail on any particular hardware without testing the kernel on that hardware.
The reason that fedora keeps 2 old kernels is to allow you to recover from a problem kernel update.
Without knowing why you were dropped into the emergency mode it is not possible to guess what is wrong. It is worth setting a password on root so that when you are dropped into the emergency console you can login and do some diagnostics.
Often the lines of log above the emergency mode prompt tell you what is stopping the boot.
Can you reproduce and post a screen shot of what you see?
After some research, which left my head spinning, I decided to just do a dnf update and see what happens. I’m now booting from kernel 7.2.7-200.fc44.x86_64 and everything seems fine.
The moral of the story is (I suppose) don’t trust system updates to Discover.
You used Discover to install kernel 7.2.6, which didn’t work
You used dnf to install kernel 7.2.7, which did work
Your conclusion is that Discover is faulty?
Isn’t it possible that what matters here is the difference between kernel 7.2.6 and 7.2.7, rather than the difference between Discover and dnf updates?