Apple TV repair
Backup
I wish I had a backup of my drive before the Apple TV went screwy, but I made a backup of the screwy state anyway. Here's how:
I unplugged the device, then I removed the hard drive. I skipped the hair-dryer step, which was a mistake. iFixit has guides for disassembling the machine: http://www.ifixit.com/Device/Apple_TV_1st_Generation
(Before I attached the drive, I should have turned off Spotlight, so it wouldn't add search folders to two of the volumes).
I attached the drive, via USB <> PATA adapter, to my Mac. I unmounted the volumes on the drives using Disk Utility, which I kept open so that I could repeatedly unmount the drives easily while I worked.
I used gpt to view a snapshot of the partitions as they were. But first I found the name of the disk from Disk Utility by clicking on the drive and getting "Information." Your disk may be in a different slot of the /dev/disk# numbering order:
gpt show /dev/disk1
Then I used dd to copy the entire drive as an image on my hard drive—make sure you have enough room, the ATV drive is at least 40GB. I put it in my Temp folder which I ordered Time Machine to ignore, so it doesn't bother backing up so huge a file.
sudo dd if=/dev/disk1 bs=1m of=~/Temp/appletv-orig.dd
You can press control-T during the execution of dd to see the progress. It took me about two hours to copy this way.
- to be continued
New hard drive
I've tried many different methods to copy what's on the old drive to the new drive. At the very least, supposedly, I need the partitions, with data in the recovery partition copied exactly. With that, "Factory Restore" should put everything back in order.
I've tried online methods:
http://www.engadget.com/2007/03/23/how-to-upgrade-the-drive-in-your-apple-tv/3 . This method balked at the re-addition of the fourth partition after removing it.
Using a G5
Next to try: http://guides.macrumors.com/Apple_TV_250GB_Hard_Drive_Upgrade . I should try it on my G5.
Rebuilding GPT
- Use gpt show on the original disk to see the partition table's exact measurements.
- Use dd to copy from image, made with dd, of complete, original drive.
- Use gpt remove to remove partitions 1-4 from the partition table
- Use gpt add to replace partitions 1-3 with exact copies of the original partition measurements.
- Use gpt show to determine the leftover space for partition 4.
- Use gpt add to add a partition 4 that fills the rest of the space.
- Use Disk Utility to repair the 4th partition, Media. It will see that the Volume Header's size (old size) doesn't match the partition table size (new size).
- Remove .Spotlight-V100 from Media and OSBoot if they're there. Maybe single-user mode would be best so that automatic interlopers like Spotlight don't mess with our disks.
References
http://www.engadget.com/2007/03/23/how-to-upgrade-the-drive-in-your-apple-tv/