I’d been running into problems recently, having my builds run me entirely out of existing hard drive space on my 160GB hard drive, so I broke down and ordered a 250GB drive from MCETech. This is maybe the fourth time I’ve done the whole move-the-internal-drive-to-an-external-enclosure-and-transfer-partitions process, so one might think I’d have it down by now. Alas, not quite.
First, an annoying detail I hadn’t noticed about the drive enclosure–it requires two USB connections: one for power, and one for data (and probably more power). This makes it a little more unwieldy, and furthermore, since I often use a USB-based laptop mouse, problematic. However, I generally live without external storage, so I’m not too put off.
The actual hardware transferring process was actually pretty much a breeze. I’d dug into my TiBook before, but the MBP is new, and so it was nifty to get in and see how it was put together. I have to say that the side, back and sunken bottom screws seem to be a much better system for maintaining a secure case. Kudos to those Apple hardware guys. My only two problems here were that I didn’t know exactly how much force it would take to detach the case top from the clips (and was probably overly gentle and thus not getting anywhere for several minutes), and that I was missing one of the rubber grommets that hold the hard drive in place. (In the latter case, it is entirely possible that it jumped ship as I removed the old drive from the case, but a search of my workspace did not reveal it.)
The rest of the process has been a bit of a drag though. The first concern was converting from a BootCamp-enabled setup (a BootCamp-created partition and then everything else on one HFS+ partition) over to a different layout more inline with my historical preferences: at least two HFS+ boot partitions (>= 20GB) to host the current released OS X and one for a pre-release OS X, one large data partition to host data. I ended up taking that template and adding a small case-sensitive partition for some testing purposes, and room enough to maintain the previous BootCamp-created partition. After some small amount of figuring, I tell Disk Utility to do its magic, and I’m ready to start transferring.
Even though I only had the one big HFS+ partition for Mac OS X things, I had still maintained some segregation left over from the TiBook days. So I moved everything in my “Stuff” directory and my source enlistments to the new data drive. This ended up dying in the middle because, despite the fact that Microsoft Entourage was shut down, reminders were still turned on, which meant that the background Database Daemon kept a lock on my identity’s database. Not quite thinking correctly, I re-dragged the Microsoft User Data folder over to the new partition. See, it had succeeded moving some items, but not all items, and as such, I blew away other parts of my identity, including my rules1. I had been moving rather than copying, because I would need to trim down the original drive because it wouldn’t fit on a 25GB partition. Drat. Well, the rest copied successfully, and then I was able to Carbon Copy Clone the original OS disk over to the new, smaller partition. This too was problematic, in comparision to older times–having the two boot partitions means that you can boot off of one to transfer the other, but I ended up having to use target disk mode and my mostly-unused G5 in my office to accomplish the same thing. Once there, I made happy symlinks in my home directory to the Documents, Movies, Pictures (etc.) folders on the data partition, and the Mac-side was good to go.
This is where I started running afoul of missing support for moving BootCamp partitions around. Disk Utility wouldn’t touch the thing2. I downloaded WinClone, but ran into this problem. At this point, I gave up on Windows for the moment, knowing I could always pull it off the external drive later.
Now it was onto installing Leopard in the space lovingly devoted to it. I rebooted into the installer DVD and it complained it couldn’t install on a drive formatted in this fashion. “Argh!” A quick inspection in Disk Utility showed that it was, in fact, partitioned using Apple Partion Table rather than GUID Partition Table. Then, of course, I slapped my head, since I remember having noticed that when I looked at the completely clean new drive, but apparently when I repartitioned it, I neglected to switch which partition scheme I used.
After much grumbling, I used Disk Utility to image the two data-containing partitions back onto the external drive, re-repartitioned using the right partition scheme this time, and spent quality time trying to get the images back onto the drives. In the case of the OS partition, for some reason, both Carbon Copy Cloner and Disk Utility balked many times in a row at the restore, and the first restore that took had for some reason decided to ignore the permissions on the disk image, resulting in a non-functional OS. (It would drop into some boot-time Unix console, try several times to load some services, and ultimately fail.) This morning, I am finally back to the point where I can install Leopard.
I know that this is not a typical procedure for non-technical people, but I really do wish there were an tool, possibly part of the Migration tool, or maybe the Disk Utility (or, obviously, a third-party solution), that let you batch move/resize partitions so that I could do this in one stop. It would be especially cool if it allowed me to split an existing disk into two separate disks by which sets of the file system I wanted transferred to which sides.
1I think the rules regeneration count is now up to eight. At least this time, it was my fault, and not some obscure un-diagnosable rules corruption.
2On the other hand, the Startup Disk would still recognize the drive as a bootable Windows partition, though if you selected it and tried to boot it now that it was a USB-based drive, it would bring up the flashing I’m-missing-a-system icon at boot.