Dec 13, '05 06:14:00AM • Contributed by: dsewell
This may be a rare glitch, but it's a nasty one: after I used Migration Assistant to move settings and accounts from an old machine to a new one, corruption in the System keychain prevented user keychains from working or being modified.
Situation: I was migrating my account, settings, applications, etc., from an old machine running OS X 10.3 to a new one running 10.4. Everything seemed fine except for a strange Safari bug: it wouldn't make HTTPS connections. Corrupt Keychain entries can cause Safari crashes suggested a reason for the problem. Well, something was definitely wrong with my Keychain. In fact, I couldn't use Keychain Assistant to do anything: attempting to open or repair my existing ~/Library -> Keychains -> login.keychain didn't work, nor could I create a new Keychain. Each attempt produced an error message.
I tried creating a new user to see if that user could use a Keychain. No go: the new user had the exact same problem with Keychain Assistant, and could not create a keychain.
I had previously enabled the root user, so I figured I would log in as root and see if that made a difference in running Keychain Assistant. It did: I was able to select the System Keychain, and determine that it was corrupt via Keychain First Aid. Running Repair in Keychain First Aid then fixed it.
After that, user keychains were accessible, and Keychain Access worked as it should. I can't think of a way to do this repair without enabling the root user, because Keychain First Aid operates on the login keychain only, and only the root user's login keychain is the System keychain.
