I wanted to try some new things on my computer today, and it required a reboot.  Since I run Linux, reboots happen quite rarely, typically about once a year.  When my machine came back up however, I found my normal user account couldn’t log in.  I could log in as root on the console, and all users if I ssh’d in, but ONLY as root on the console.

When I tried to log in as me, I could see that an error message was flickering up there, but it was going away too fast for me to read.  I searched with Google for a LONG time, sent a bunch of emails to my local Linux Users Group, all to no avail.

Someone suggested logging into one console as root and watching the console error messages as I tried to log into another console as my regular user.  That didn’t work, BUT, for some reason it slowed the machine down enough that I was able to read a single word of the error message.  I did it again, and got the second word.  I continued with that until suddenly, it didn’t go away!  There was my error message:

** (process:6340): CRITICAL **: unknown class "dri" at line 78 in /etc/security/console.perms

and below it said

INIT: Id "2" respawning too fast: disabled for 5 minutes

So what happened is that my frenzied login attempts caused the computer to think it was being attacked, and disable that account for 5 minutes.  That also left my real error message up on the screen.

Once I could see it, it was really quite helpful.  I opened /etc/security/console.perms and went to line 78, and took out the line that said

<xconsole> 0600 <dri>        0600 root

I then waited for the login embargo to time out, and logged in flawlessly.

So why did this happen?  Well, I have an nVidia GeForce FX 5600 video card with tons of RAM.  I use Fedora Core 3, which comes with a driver for it, but the official driver is MUCH nicer.  I installed the official driver, but again, because I use Linux, I didn’t actually have to reboot, or most importantly, even re-log in.  I’m guessing the new driver somehow messed up the dri module, but since I was already logged in, it didn’t freak out.  It was only after I logged out and back in that I had the problem.

So to sum up, I’m using Fedora Core 3, and I could only log into the console as root.  I fixed it by looking in /etc/security/console.perms.  Google, take note.

One thought on “Why can I only log in as root?

Leave a Reply

Your email address will not be published. Required fields are marked *