It had to happen eventually. After eight-plus years of problem-free computing on Mac OS X computers, I caught a doozy.
I wrote the first part of this post on a 2010 MacBook Air booted to single-user mode while on a plane heading for Boston. It's the first major failure of one of my primary Mac laptops ever, and it left me stranded for the first time. Well, sorta stranded -- I could still use Unix's vim to write, after all, on my way back to the lab to determine exactly how screwed up this laptop really was.
[ Read about the long-standing love affair between InfoWorld's Paul Venezia and the MacBook Air. | Subscribe to InfoWorld's Apple technology newsletter. ]
I caught many odd looks from other passengers; one fellow asked me point blank what application I was running. I suppose people aren't used to seeing a Mac with its pants down.
Very few things bother me more than starting from scratch and reconfiguring a primary computer. I've kept the same environment from Mac to Mac for years, as Mac OS X flawlessly migrates all your data, applications, settings, and so on from install to install. This is one of the major benefits of Mac OS X: You don't have to spend hours redownloading and installing applications, looking up license keys, reconfiguring mail clients, and the whole ball of wax that often comes with settling into a Windows computer. I consider that time a waste. My Mac environment fits like my favorite jeans, and I was damned if I was going to break in a new pair.
Once I reached solid ground and headed into the lab, I fired up the Mac again and saw that nothing had changed. Where it used to boot in 5 seconds or so, there was nothing but a spinning wheel and sadness. I grabbed my trusty Windows 7 laptop and turned it on to search for information on the problem. It promptly blue-screened, though it rebooted itself almost immediately. Unfortunately, it was before I could take an epic photo of these Mac and Windows laptops side by side simultaneously losing their minds.
As for the Air, it appeared that some corruption somewhere was preventing various kexts (kernel extensions) from loading and the window server would never launch. Being a hard-core Unix geek, I opted to cover all my bases and back up everything I could before trying a fix.
Luckily, you can boot single-user into Unix on a Mac OS X box, and I was able to manually recover a few very important documents to a flash drive. However, this wasn't a great method to back up the system. Now that I had my Mac OS X USB boot/reinstall disk handy, however, I considered more options. For instance, you can't run diskutil in single-user mode, but you can when booted to the Mac OS X installer. I did that, ran a disk permissions repair, and rebooted -- nada, same problem. The internal 256GB flash drive wasn't showing filesystem problems; it was actual file corruption, apparently.
So I backed up my 70GB homedir to an HFS+-formatted USB drive, then used that drive to copy that backup to another Mac, just in case. Each copy pass took 25 to 30 minutes. I then reformatted the USB disk with the GUID partition table (the one used for Intel-based Macs like the Air) and installed a fresh copy of Mac OS X from the USB install drive. I elected to copy files and settings from the internal disk during the subsequent setup phase. A while later, my Air booted up from the external USB drive just fine, with all my files, settings, and everything else fully intact. Naturally, this wasn't a solution unless I wanted to carry an external USB drive around with me at all times, so I set about trying to fix the internal disk.
Because I was comfortable with the backups I'd made, I unplugged everything and booted the USB install disk. I figured I could always reformat the internal disk later, so I simply clicked to install Mac OS X on the internal drive as is. After 20 minutes of churn, the Mac rebooted back to normal. I didn't have to reformat, reinstall any applications, or redo any settings -- I just had to perform a basic OS install on the same drive to get my Air back exactly as it was before all this nonsense.
Had I not been so paranoid about losing data (even with the knowledge that I had a relatively recent Time Machine backup sitting on the network), I could have been up and running with my tools and data in about 20 minutes, not the six hours it took to back up my data all over the place and hedge my bets.
What's the lesson in this? For one thing, better safe than sorry -- had I not backed up everything, Murphy's Law guarantees that the reinstall would have gone awry and I'd have had to reformat the disk. But there's also something to be said about a mainstream consumer OS that lets you boot single-user and even use utilities like rsync from a terminal window when booted to the install disk. Those features bring visibility to a crippled system and greatly enhance the possibility of data recovery.
Had I been a normal user, I'd have brought the thing to an Apple Store, where they would have reinstalled the OS, probably reformatting the disk along the way -- not an option.
Or maybe, had I brought the USB install disk with me on the trip, I'd have fired that up on the plane and been back in action before the meal service came around. I may have been let down by my Air, but I was able to recover completely without too many hassles. If a Mac disaster has to occur, I'd much prefer that it happen that way.
This story, "Dead Air: Tale of an epic Mac fail" was originally published at InfoWorld.com. Read more of Paul Venezia's The Deep End blog at InfoWorld.com. For the latest business technology news, follow InfoWorld.com on Twitter.