I know, I know. It was a stupid thing to do. But I was in a hurry and my laptop was stuck at 97% for like 2 hours. when i booted it up after shutting it down i was greeted with the newest kernel at the top of grub (6.1.something) and when i pressed enter it couldnt boot.
I can boot into older kernels tho (6.0.18 i think) but im greeted with only the cli and my desktop env (gnome) won’t start. I think it’s my nvidia driver thats what causing the issue but im not sure.
I tried reinstalling xorg, kmod-nvidia but nothing fixes it.
Any ideas what could be the problem?
(i’m available for debugging)
Fedora 37 | os
Rog Strix G512LI | pc
I think the common solution for cases where an update was killed mid-way through is to run dnf distro-sync --releasever=<whatever>.
I think this is a good illustration why offline updates are a bad idea. If the update were being done online, you could see exactly what package the update process was hung on and you would’ve (potentially) been able to correct whatever the problem was and retry the updates while the system was still in a usable state. With offline updates, it either works or … Thankfully there has been some talk of going back to online updates but doing them in a cloned subvolume so if the update fails, it will be easy to get back to a working system. I really hope that idea takes off someday.
Unfortunately, there is no error message there, so that makes it very hard to tell what the problem is. Nvidia, as you point out, is a good candidate for that sort of problem though. It may be that it has problems with the latest kernel and you might need to remove the latest kernel, downgrade the “kernel-headers” package, and then reinstall/recompile the nvidia driver. (I’m not really that familiar with troubleshooting Nvidia problems.)
If you can easily remove Nvidia from the equation and try booting the system with just the on-board video, that might help to narrow down the problem.
Another thing that can cause services to fail during bootup (but which often doesn’t display obvious error messages) is SELinux. Many packages run “post” scripts after all the files have been copied into place. It might be the case that new files were created during the install, but their SELinux permissions were not updated due to the process being killed before those final scripts were run. The solution for that would be to run fixfiles -F onboot and then reboot the system. It should then go through all the files on the system and verify that their SELinux permissions are correct on the next boot. (I think this is unlikely to be the problem though. I think most SELinux permissions are stored in a global database rather than being distributed with the individual packages.)
Just as an example, flatpak installs its own SELinux policies in its post installation scripts:
Looked into journalctl and gnome-shell is just flooding with errors
I installed kde in the meanwhile and tried to switch to it via switchdesk but nada happened. I migth just have to edit manually. But i already turned my latop off and gave up for the day. I’ll troubleshoot more tomorrow
I just did an upgrade from 36 to 37 on my laptop.
For me it failed to properly update the nvidia drivers ( I use secure boot) and I was stuck with fallback to nouveau. The fix for me was to remove the nvidia drivers, then reinstall them so they were properly built and signed, then the boot was good.
It seems something may be wrong in timing on what is updated when so not everything flows as smoothly as we wish.
Since you are able to boot into the system, even though not into the normal graphics desktop, and the screenshot seems to show nouveau as a factor, there are a couple things I would suggest for the first steps of troubleshooting and repair.
Look at the output of dnf list installed '*nvidia*'. This should show all the nvidia related packages currently installed, their version, and where installed from.
remove the nvidia drivers. dnf remove '*nvidia*' --exclude=nvidia-gpu-firmware (the firmware is needed and must not be removed)
look at the output of uname -a. If you are not booted to the 6.1.6 kernel then remove that kernel. If you are booted to that kernel then move on. dnf remove kernel*6.1.6*
If you removed the 6.1.6 kernel then reinstall it. dnf upgrade --refresh
After reinstalling the kernel reboot.
now reinstall the nvidia drivers. dnf install akmod-nvidia xorg-x11-drv-nvidia-cuda
Wait at least 5 minutes then reboot. Now the nvidia drivers should load properly.
This can be verified with lsmod | grep nvidia which should now give a 4 or 5 line return.
The nvidia modules having properly been built after install would also be reflected by again doing dnf list installed '*nvidia*' and looking for the kmod-nvidia package matching the kernel last booted.