Recovering your iTunes library from a HD crash

I wrote a long bit about my recent disk crash and the trials of trying to restore, then rebuild it, but this is the short and skinny on how to fore a new iTunes library to recognize your devices that were sync’d to the lost one.

First, iTunes is not friendly at all at copying stuff off of foreign iDevices – something about music rights, or whatever. “Transfer purchases” only moved the iStore apps and five or so ebooks off my iPad that were free downloads but not DRM free (I don’t like not being able to share like a real book), so I was still stuck with a lot of stuff in jeopardy of vaporizing like the rest of my data. Syncing would wipe the device because it was sync’d “to a different library.” You’d see something like this:

iTunes-message

Uh oh.  No syncing yet. I don’t jailbreak my devices – call it worry that I may not recover and end up with a brick – but even if they were jailbroke, what I needed was a way to get iTunes to not wipe my stuff.

I found a couple programs that claimed to be able to read and transfer files from an iDevice and settled on Wide Angle Software’s TouchCopy because it could see the ebooks and podcasts, while the other couldn’t. I used it to pull the books and music – and export playlists – off of my iPad.

Do note that that one can backup a device in iTunes without syncing. That comes into play in the next step. But I had to do more research…surely somebody has come across this before.

Hacking iTunes

I found the answer here on Felipe Corsino’s blog. I needed to get at the Persistent Library ID that iTunes uses to identify a library to the devices sync’d to it…. with the caveat that you can’t sync to more than one library….unless you clone that library ID and fool the device.  Corsino explains it well, but I had to dig more as I no longer had my original library to get the ID from. In a nutshell:

  • backup your device, and find your info.plist file in the backup subdirectory
  • one way to extract your ID is to upload your info.plist file to here but that didn’t work for me

So, more research and,

  • find the iTunesPrefs key in the info.plist file using a text editor (info.plst is an XML file)
  • copy the stuff between the <data> tags after the <key>iTunesPrefs</key>
  • paste it in this base64 decoder which will output a DecodedBase64.bin file that you will save
  • use a hex editor to find the 8 bytes starting at offset 12 (0x0c); I used the free Hxd Hex Editor

hex Persistent ID

  • reverse them to get your ID
  • then use Corsino’s sweet little program iTunes DB Cloner to hack the iTunes library so it now thinks it is the old library and won’t want to wipe your iPad or whatever when you sync it.

Of course, if the new library doesn’t have any of the data, music etc, you might lose the stuff off of your device anyway unless you can extract it and reload into your new iTunes.

I cannot stand Apple’s control, but I am wedded to their consumer electronics. (I despise their operating systems so will never own a Mac).

One response to “Recovering your iTunes library from a HD crash

  1. Pingback: On weather, creating art, and other general thoughts | Random (or not) Musings

Leave a comment