Wed 31 Oct 2007
Over the last several years, I’ve managed to migrate my mac through hardware updates and OS updates without having to rebuild my system from scratch. Pretty cool, I thought - I used to have to do that about once every nine months on my PC.
Well, this August I finally bit the bullet. I wanted to clean out some unused but obscure files and basically get my system humming again. So, I fired up SuperDuper!, imaged my Mac, and then popped in my system disk and wiped it completely clean.
I installed Mac OS X 10.4 (Tiger) but first I had to choose the file system. I noticed that I now had the choice of selecting HFS+ (Journalled) (case-sensitive) that I don’t remember seeing earlier. Interesting. A case-insensitive file system can be really annoying - as a Java developer working on some pretty old code, I’ve got the infamous COM/com package naming convention issue to deal with among other things. When I rebuilt my computer, I went for the (case-sensitive) option to see how it would go.
I quickly installed all of my apps (a cookbook for rebuilding your computer from scratch is a handy file to keep on your hard drive just in case you need to actually use your backups now and then). After a week or so of testing, I was satisfied that all was well. This was great - I now had a case-sensitive file system and a regular Mac and everything just worked.
… until someone asked me to work on a web page using Dreamweaver.
I bought Adobe Creative Suite 3 Web Premium basically as soon as it came out. Native Intel support was key for me, and there were some pretty cool features in Dreamweaver, FireWorks and Photoshop that I wanted to try out. I had it installed on my mac before the rebuild, but left it to last afterwards because I don’t use it all that much and it really takes a long time to install anyway.
Bad idea. Apparently CS3 won’t install on HFS+ (journalled) (case-sensitive). I should have expected this. Dreamweaver 8 didn’t work on a case-sensitive file system either, but I figured Adobe would have fixed this when they bought Macromedia.
Long story short, I needed to reformat my hard drive to HFS+ (journalled) just to be able to install CS3. I couldn’t even install CS3 on a dedicated partition - it needs the system partition to be case-insensitive.
I thought about it for a bit and then eventually fired off an email to Dave Nanian at Shirt Pocket. The plan was to image my case-sensitive drive with SuperDuper!, wipe my Mac, reformat the drive with a case-insensitive file system, then restore from my image. Dave thought it would work so I set my plan aside for 3 months till I had either a huge need or an extra half day to do the conversion. (100GB takes a long time top copy back and forth).
Well, yesterday I tried it out and after working through a couple of glitches, it worked! Perfectly!
The technical instructions:
Steps to convert your HFS+ (journalled) (case-sensitive) file system to a HFS+ (journalled) file system without having to re-install your whole OS
- Install ShirtPocket software’s SuperDuper! Pay for it.
- Create a full image of your hard drive on a remote volume using SuperDuper!’s standard mechanism. Use a remote volume, like another firewire-equipped Mac or an external hard drive. I chose to skip all the caches but that’s up to you - the default settings work fine.
- Create a second image just in case
- Test out the image: open it and spot-check some of your files. They’ll work but it’s comforting to see them actually working.
- Insert your Mac OS X disk (or the restore CD that came with your Mac) and restart, holding down C
- Pray
- Open Disk Utility and reformat your drive using HFS+ (journalled). Name it the same thing as it was named previously.
- Plug in the drive holding the backup into your Mac. Booting from CD you don’t get network support, so if your image is on an external Mac, like mine was, you’ll have to boot the second Mac in FireWire Target Disk Mode.
- Select your drive and click on the restore tab. Navigate to your image and select it, then drag your target disk onto the Destination box.
- Make sure erase is unchecked; click restore.
- Reboot
- Rejoice
- Flame Adobe about the case-sensitivity issue
Now, to be honest, the above instructions were my plan. It didn’t quite go as planned. I had 3 issues.
First, I had used a sparseimage (read/write image) in SuperDuper! because it’s the default recommendation. The problem is, Disk Utility doesn’t like restoring from a sparseimage, and these images are greyed out. I ended up having to convert my sparseimage to a dmg using Disk Utility on my other Mac (a G5 iMac) (don’t try doing this over the network if you place any value on your time). That worked fine.
The second problem I had was a little more disturbing. Disk Utility told me to drag my target drive onto the Destination box, but there was nothing to drag! I could not figure out how to restore back onto my main hard drive. Nice: I had the drive wiped but could not restore it. I never found out how to do this but did find an easy way to do this through the command-line version of Disk Utility. As such, the instructions above are amended as follows:
…
- Plug in the drive holding the backup into your Mac. Booting from CD you don’t get network support, so if your image is on an external mac, like mine was, you’ll have to boot the second Mac in FireWire Target Disk Mode.
- Quit Disk Utility
- Open Terminal
- Type the following:
# asr /Volumes/MountedExternalDrive/path/to/your-image.dmg --target /Volumes/YourDestinationDriveName -noverify
and press return
- Wait a really long time. For my 100GB 7200RPM 2.5″ drive this took about 5 hours
- Reboot
- Rejoice
- Flame Adobe about the case-sensitivity issue
After rebooting, I fired up OnyX and ran basically all of the standard cleaning and maintenance jobs, the rebooted again. I figured it was worth pro-actively running some of these jobs rather than letting my Mac find issues related to obscure filesystem issues.
After the second reboot, everything was running perfectly. I was able to install Adobe CS3 and it worked.
Plus, as an added bonus, SuperDuper! recognizes most of the files on the old image as being the same as the ones on the new drive, which means my next backup was still just an incremental backup. If you don’t know what I’m talking about, read about SuperDuper! here.
That’s basically it. As far as I’m concerned, Dave saved me hours of rebuilding. Plus, having a perfect backup of my hard drive each night is good for peace of mind too. I’m not sure how SuperDuper! will play with Leopard now that it’s out (though he does talk about it here), but one thing’s for sure, given some of the upgrade issues, I’ll be running a full backup before upgrading.
Well that’s it. A successful but scary project, and now I’m back up and running… and ready to try my Leopard upgrade…
Tony