Last week, I took advantage of some vacation time to perform a bunch of around-the-house tech maintenance. One of those tasks was to move a Mac mini from my data closet to my desk so I could use it for hands-on testing. (The mini is also acting as a media server, so it hadn’t been restarted in a couple months.)
After setting everything up and pressing the Mac mini’s power button, I was presented not with the familiar login window or Desktop image, but rather with a long delay followed by an image of a folder with a flashing question mark. If you’ve never seen this screen before—and I hope you’ve been so lucky—it essentially means “I can't find a startup volume.” And the mini never made it past this screen.
Now, this Mac mini was working perfectly just half an hour earlier, and I didn’t recall it falling victim to any heinous physical abuse during the 15-foot trek between the closet and the desk. So it was time to perform some basic troubleshooting.
I force-restarted a couple times just to make sure this wasn’t a one-time glitch. No luck. I tried starting up in Safe Boot mode by holding down Shift at startup, but the mini acted as if Safe Boot didn't exist. I tried booting from both the Mac OS X DVD and a DiskWarrior CD to check the hard drive for directory corruption, but holding down the C key at startup wouldn’t force the mini to boot from the optical drive. (Holding down D similarly didn’t launch the OS X disc’s Diagnostic Mode.) I tried holding down Command-S to enter single-user mode, hoping to run the
fsck command to test and repair the drive. No dice. I tried booting the Mac mini into FireWire target disk mode (by holding down the T key) so I could connect the mini as a hard drive to my Mac Pro, but target disk mode wouldn’t work. Heck, I even tried resetting the parameter RAM ("zapping the PRAM") by holding down Command-Option-P-R. Nothing happened.
Puzzled, I disconnected everything from the Mac mini but the power, display, and keyboard cables to be sure a bad peripheral wasn’t the cause of the problem. I even tried different keyboards, mice, and power supplies. The mini remained stuck at the question-mark-folder screen.
Given that I’d taken apart this Mac mini many times, I thought there might be a cable loose inside. So I pulled out my trusty putty knife and took the mini apart.
Everything was connected properly, so I removed the mini’s hard drive and connected it to my MacBook—it mounted properly, Disk Utility and DiskWarrior both gave it a clean bill of health, and it showed up as a bootable volume.
Perhaps the RAM wasn’t seated properly, or was defective? It looked fine, but just to be sure I swapped the RAM between the MacBook and Mac mini (which use the same RAM type). The MacBook worked perfectly using the Mac mini’s RAM. Stumped, I decided to boot the mini using the MacBook’s RAM.
Success! The mini booted normally. I even ran Memtest on both sets of RAM to make sure all the memory was good. It was. In other words, I couldn’t find anything wrong with the Mac mini’s hard drive, RAM, OS, or anything else. But at least the Mac mini was now working properly.
That is, until things took another turn for the worse. Now that the mini was working again, I ran Software Update. After installing some OS updates, I restarted...and the mini again presented me with the dreaded question-mark-folder screen at startup.
Insert various exclamations not intended for young ears here.
As I was (again) performing various troubleshooting tasks, I decided that since both sets of RAM were good, I’d swap the RAM chips back to their original "owners," so the Mac mini and MacBook would each have its original RAM. Much to my surprise, on the first boot after the swap, the Mac mini again started up normally and functioned perfectly.
Now I was really annoyed. Not that the mini was working again, but that I didn’t know why it was working again. Still, the fact that it booted normally immediately after swapping the RAM got me thinking.
I rebooted, and there was my good friend, the flashing-question-mark folder.
(As someone who’s written volumes on Mac troubleshooting, I then realized, with much embarrassment, that there was one basic step I hadn’t attemped earlier: I hadn’t tried to boot the mini from a different hard drive. This would have saved me a lot of time and frustration. Not because the external hard drive would have worked—it wouldn't have—but because to boot from it, I would have had to use OS X’s Startup Manager, a useful interface for choosing your boot volume during startup.)
I rebooted holding down the Option key. Normally, doing this would present a special screen showing all accessible bootable volumes. But given the circumstances, I didn’t expect to see this, and my suspicions were confirmed: Instead of the Startup Manager, I saw a prompt to enter a firmware password. And then everything made sense.
A firmware password is a low-level password you can enable using the OS X Install Disc or the Firmware Password Utility found on that disc. With such a password enabled, you (or, more important from a security standpoint, another person) cannot access any startup options, including changing the boot volume or activating any special startup modes. There are ways to get around a firmware password—unless you have a MacBook Air—but if you don’t even know such a password has been enabled, you wouldn’t think to use such methods. And the only way to provide your firmware password to get around these restrictions is, for Intel Macs, to hold down Option at startup—the same action you take to use Startup Manager.
As it turns out, a couple weeks earlier, while editing and testing an article on security, I’d enabled a firmware password. Not only had I neglected to disable that password afterwards, but I'd completely forgotten it was even enabled. And because this was the first time I’d rebooted the mini since activating the firmware password, it was the first time I’d been affected by the additional security.
So that explains why I couldn’t boot from a CD or DVD, or enter single-user or Safe Boot mode, but why would the Mac mini refuse to boot at all, even from its internal drive?
Have you ever opened the Startup Disk pane of System Preferences, only to discover that no startup volume is selected? It’s a fairly common issue, but one that few people ever notice—or fix—because normally if there’s no startup disk chosen, Mac OS X automatically cycles through available volumes, including the internal hard drive, until it finds a bootable volume. Booting may take a few seconds longer, but it otherwise proceeds just as if you’d selected the internal hard drive in Startup Disk.
But if there’s no volume chosen in Startup Disk and you’ve got a firmware password enabled, you’ll find yourself in the Twilight Zone of Mac startup: Your Mac doesn’t know which disk to boot from, but the firmware password prevents the Mac from finding (or, more accurately, switching to) a valid boot volume. You’re stuck, and the only way out is to provide the firmware password. Which, if you don’t realize what’s going on, you wouldn’t think to do.
(Why did the Mac mini start up successfully, avoiding the password, on the first boot—and only the first boot—after swapping the RAM? Because there’s a back door to firmware passwords: You can bypass the password by changing the amount of physical RAM inside the computer and then resetting PRAM during the first boot immediately after the RAM change. In other words, if you change the amount of RAM in a Mac, it will start up normally one time to give you a chance to reset the PRAM; if you don’t reset the PRAM during that boot, firmware-password protection will be restored the next time you boot.)
The moral of this story? First, when troubleshooting a problem with your Mac, don’t forget a basic step. Second, if you’re going to enable a firmware password, be sure there’s a valid startup volume selected in the Startup Disk pane. And third, if you do enable a firmware password, don't forget doing so (or forget the password, for that matter).