Cannot login after upgrading to F36 and relabeling SELinux

Update: I found that my problem is almost the same as the problem in this post and I also encountered similar issues in this post. Since there are duplicates I think this post can be abandoned, sorry for not thoroughly searching the forum before posting.

I just tried to upgrade from Fedora 35 to 36. The update process itself was quite smooth, and the first boot and login after upgrade is mostly successful, but my SELinux shows an alert repeatedly. I thought maybe the upgrade messed up some SELinux config, so I tried to run relabeling by executing the command touch /.autorelabel; reboot given in the SELinux alert window. I did not know much about SELinux and didn’t thought this may lead to bad results, sorry for that…

After rebooting, SELinux started to relabel the filesystem. There were a small number of warnings saying there were conflicts between files, but since I cannot intervene the process I did not pay much attention to them (probably another mistake). My computer rebooted after relabeling, but in this booting process a prompt came up saying that the proprietary NVIDIA kernel driver was not found and it has fall back to nouveau. What was worse is that I cannot login, neither through the graphical login interface nor directly through TTY. More precisely, in TTY after I entered my username and password, the login seemed to be successful and a line showing last login time is printed, but then I was immediately brought back to the state before login, asking me to enter my username and password again. As I remembered the NVIDIA GPU on my computer was not well supported by nouveau, and last time the “falling back to nouveau” prompt was shown something bad also happened. What could be the cause of my problem, and how can I fix it?

I am a bit worried about the problem since I cannot login even through TTY… If it’s a GPU driver problem, then would TTY not be affected since only CLI is used? Or is my understanding is incorrect?

Update: I’ve just found this post and I should have been affected by this bug :smiling_face_with_tear: I have fully upgraded my f35 before upgrading to f36, so I think this bug has not been fully solved. In addition, I also tried to login in rescue mode, but still no success. However, from the error prompt in rescue mode (shown in the screenshot below) I’m pretty sure the SELinux relabeling caused the problem. If SELinux relabeling could cause disastrous results like this, should this operation be warned more explicitly?

Hi @ytliu,

Since our problems are close, my solution might help you too.

If you fully updated your F35 before upgrade, you shouldn’t be affected by SELinux-related errors when updating packages or using certain tools, after upgrade to Fedora 36 . There is a serious problem with nvidia cards mentioned in Proprietary Nvidia driver shows a black screen instead of a virtual terminal or a graphical session , but I don’t know if it is related to your case. SELinux relabeling shouldn’t have any harmful effect (quite the opposite), but it is possible that something breaks if you have third-party kernel modules installed (nvidia).

It is very suspicious that the rescue mode says /bin/bash: Permission denied and Failed to mount boot-efi.mount.

Try to boot your system with enforcing=0 argument in grub. If you can log in at least using TTY, you can use the updated workaround in SELinux-related errors when updating packages or using certain tools, after upgrade to Fedora 36 (first distrosync, then reinstall). If you can’t log in using TTY, you can also use the Everything/Server netinst/DVD ISO image to do an emergency mount into your installed system and get a working prompt that way. You can also schedule a new relabel this way. On a standard system, that should hopefully resolve any SELinux-related issues, but I have no idea whether the nvidia proprietary files won’t badly influence the process :frowning:

Hi @uwereh, thanks a lot for your suggestions! I’ve tried what you’ve done in your post and now I don’t have any unexpected SELinux warnings anymore, which is great :laughing: For easier reference I will post the link to your solution here.