The OS X GUI won't accept any passwords (but the command line will)

The graphical side of OS X has stopped accepting passwords for any account. I am definitely typing them right, but the password box just wiggles "no." And here's the weird part: I can log in from >console mode. I can log in via SSH. sudo works just fine. The command line happily accepts my password; the graphical side absolutely refuses.

Things I've already tried:

  • Created a new user from the command line. Couldn't log in as that one, either.

  • Used my Apple ID to reset my password. That part worked, but when OS X autofilled the new password and tried to log in for me, all I got was the "no" wiggle.

  • Backed up ~/Library/Keychains/login.keychain and replaced it with an empty file. Nope.

  • Created a fresh system keychain with sudo /usr/sbin/systemkeychain -C -f. Nope.

  • Booted into the recovery partition and verified/repaired the disk and its permissions. No apparent effect.

  • Update: Booted into safe mode. Still couldn't log in.

  • Confirmed that there are no wireless keyboards connected to the computer. Confirmed that the keyboard locale was what I expected it to be. Confirmed that Caps Lock was off. Typed my password into the username box so I could see it for myself. I promise you, I am typing it correctly.

This is not the problem where the login process appears to start before returning to the login screen. Whatever mechanism verifies passwords for the GUI appears to be returning false no matter what.

I'm on a late-2009 iMac (iMac11,1) running 10.9.2. I could back up my files and reinstall the OS, but I'd really, really rather not. Help!


After checking the system log at the suggestion of @Asmus, I tracked the problem down to a misbehaving PAM module. (It had been working fine for weeks; I don't know why it suddenly screwed everything up.) Thanks to everyone who commented!