I had an interesting repair on my desk this week; a MacBook Pro that froze the second time it was put to sleep after a restart. While sleep issues aren’t terribly uncommon, this specific type of sleep issue was rather unusual. The customer had already spoken with Apple about the issue and they walked her through some basic troubleshooting including making a new user account for testing purposes. I immediately found in testing that the issue was reproducible even at the login window, which implies that it’s unrelated to the individual user accounts.
My first troubleshooting step was to reset the SMC, which controls power functions such as sleep, power on, shutting down and battery regulation. When that had no effect, I boot to an external hard drive and lo and behold, the machine slept and woke numerous times without issue. The conclusion there is that it was a software issue and most likely not hardware-related. Still, knowing that hardware problems such as faulty RAM or a failing hard drive can cause software corruption, I went ahead and ran the rest of Apple’s diagnostics and a surface scan of the drive before beginning work on the machine; everything else passed with flying colors.
Knowing that the issue occurs at the login window helped me choose the next most logical course of action; an Archive and Install. An Archive and Install preserves network and user settings, but reinstalls the operating system. It’s a great way to resolve system-related issues without losing personal files. After the Archive and Install the machine slept and woke successfully. I thought, “That was easy!” until I ran software updates and the problem came right back. Ugh!
I mentioned that the Archive and Install preserves network and user settings. Since the issue occurred when booted to the login window that implies that it’s a system issue. While the Archive and Install reinstalls the system, network settings are also accessed at the login window so I suspected the corruption might have something to do with the network settings. For my next trick, I ran another Archive and Install without preserving network and user settings. While this may sound scary, the user information is still saved in the Previous Systems folder, it’s just not put back into the user folder when the install is finished.
After the second Archive and Install I created a fresh user account and verified that, once again, the sleep issue was resolved. I then ran all software updates, and the sleep issue stayed resolved (hooray!). The final step was to restore the user account and reimport third party applications. I used the root user to move the user accounts from the Previous Systems Folder to the Users folder and then re-linked the accounts in System Preferences. Finally, I moved the third party applications from the Applications folder in the Previous Systems Folder. I should note that using this process does not guarantee that the third party apps will work; some apps install other components in the System and Library folders so after an Archive and Install some third party applications need to be reinstalled.
The end result? The Macbook Pro sleeps, wakes, and all of the customer’s data was preserved. The one big remaining question is, what caused the software corruption? This is the most frustrating question to try to answer because, as with licks to a Tootsie Pop, the world may never know!