A Missing Dock and Lesson in Basic Troubleshooting

My young niece called me last night for help, as friends and family often do, with her grandmother’s MacBook. The Dock and Dock preferences were suddenly inaccessible. While she could navigate through the Finder and launch applications, she could not enjoy the convenience of the dock. She’s not a Mac user, and was in a panic thinking she’d ruined Grandma’s computer.

Troubleshooting began by shutting down the computer and safe-booting it by holding the shift key immediately after the startup chime. Safe booting will disable any third party or extraneous Apple kernel extensions (kexts), and will disable automatic login. It’ll also do a file system consistency check equal to the “repair disk” function of Disk Utility if booted off your computer’s restore disks. Of course, the computer belonging to Grandma, she did not know the password. Another normal restart revealed that Grandma had automatic login enabled, so we were free to navigate and troubleshoot.

First step was to check to see if the restart fixed the issue (it didn’t). I then directed her to Activity Monitor, where I asked her to show All Processes from the Show pull-down menu. Filtering by the %CPU field revealed nothing unusual, so I asked to quit Activity Monitor and navigate to ~/Library/Preferences and delete com.apple.dock.plist. This revealed another problem: she was unable to modify anything in this folder.

I checked the folder’s permissions, and they were set properly. The only option I had was to use Terminal to delete the file. My niece deftly navigated to the upper-right corner of the screen to type Terminal into Spotlight. With terminal open, I had her type the following (if you ever need to do this, substitute your user’s name for “nana”).

rm /Users/nana/Library/Preferences/com.apple.dock.plist

and then

killall Dock

This removed the preferences for the Dock, and then restarted the Dock process. The Dock popped right up at the bottom of the screen, with all the icons from before.

I can’t say what corrupted those specific files, and it’s rarely the case that I can. The theory behind this step is to remove an application’s or processes property list (plist, or preference) file so it can be regenerated. If something is not behaving as it should, this is often the troubleshooting step that resolves problems.