23/10/2010 – iTunes DB Cloner 0.9.1.0 – added support for iTunes 10.x.
iTunes DB Cloner is a tool that allows you to synch your iPhone/iPod Touch or iPod nano with two or more computers.
- What’s the problem?
- The techie reason
- The solution
- iTunes DB Cloner
- Quick Instructions
- How to retrieve the Persistent ID directly from your iPhone
- Download
- Credits
- Disclaimer
Whats the problem?
By default, these iPod models can only be synchronized with a single iTunes. To ensure this, a unique identifier is stored in the database used by iTunes to keep track of your playlists, music, video and podcasts on your computer, the iTunes Library. This database is created per user meaning that you cannot manage your device from different user accounts in the same machine.
Attempt of trying to synchronize any of them with iTunes on a different computer, or even with the same iTunes copy in the same computer but logged on as a different user, will raise the following warning.
Your only alternatives here were either relinquishing synchronizing with the new computer or accepting to erase the media contents in the device so you could associate it again with the new iTunes… Isn’t this annoying!?!? Especially since this restriction is not present in any other models of the iPod family (iPod Classic and fatter siblings).
The techie reason
In a nutshell this tie between the iPhone/iPod and the iTunes to which it is associated with is based on this unique identifier, namely the Library Persistent ID, which is checked every time the device is connected to the computer. Only if the ID in iTunes matches the one previously stored in the device you will be able to browse, listen, watch and update the contents on the iPhone. If device and iTunes have different IDs, you will only be able to see a list of what’s stored in the device, but nothing else. You cannot listen to the music you are seeing on the screen, view any videos and let alone modifying the contents. This library ID is generated by iTunes the first time it is started up for a given user. Different users on the same computer will get different IDs for their iTunes libraries. This ID is transferred to the iPhone during the first synchronization, and will remain there until the user decides to overwrite it with a different one by synching with a different iTunes.
The solution
You can see now that if you could use the same identifier across all your iTunes libraries, in different computers (at work/home, Macs or PCs); you would then be able to play the music, videos and podcasts stored in your device(s) everywhere and, add or remove contents to it regardless of the you are using. By “cloning” this unique identifier of your iTunes Libraries across your different computers you will effectively be able to manage your device(s) in any of them. Nothing is ever touched in the device. Fortunately for all of us, Mr. Andrew Grant (hats off to him! :)) discovered where this ID was stored. Furthermore he discovered that it was perfectly safe to modify just this ID on a given iTunes library. This means that all of our information (play lists, imported albums and videos) will remain intact after altering the identifier.
iTunes DB Cloner
Modification of this database id involves altering both an XML file and a binary file which not everybody is well used to. For the lazy ones (and that includes me) or those who think they might need to do this fairly often, iTunes DB Cloner is a handy tool. iTunes DB Cloner reads and writes the identifier of your iTunes library in just one click, without needing to tinker manually with hexadecimal editors or XML syntax
Quick Instructions
The idea is to read the ID of the iTunes Library currently associated with your device, and then update your other libraries to use this ID.
Read ID
- Execute iTunes DB Cloner on the computer already associated with your iPhone/iPod Touch/nano. Note that iTunes DB Cloner automatically displays the Current persistent ID (for the current user).
- Write down the value in the Current persistent ID box somewhere, you’ll need it on the next step.
Update ID
- Go to another iTunes (different PC or different user session on the same machine); and execute iTunes DB Cloner there. Notice the ID displayed this time is different from the once you read before.
- Enter the ID from the working iTunes on the black box and click Update ID. If iTunes is already running, iTunes DB Cloner will prompt you to confirm if it is OK to close it. After a few seconds, you will hear a chime, and a confirmation of the changes.
- Click on Read ID to double-check that the Library ID is now what you entered.
- Repeat from step 3 in any other PC if necessary.
Done! You can now connect your iPhone/iPod Touch/nano to any of the modified iTunes and listen and manage your contents from them.
How to retrieve the iTunes Persistent ID directly from your iPhone
If you have no access to the computer that your iPhone is currently paired to, there’s is still a way to retrieve the Persistent ID directly from your iPhone.
Download
iTunes DB Cloner is free.
Latest version
0.9.1.0
Download iTunes DB Cloner v 0.9.1.0 for Windows. Installer (837 KB) | ZIP file (657 KB)
Older versions
0.9.0.2
Download iTunes DB Cloner v 0.9.0.2 for Windows. ZIP file (591 KB)
I developed it because I really wanted a tool like this and there was no other similar one around by the time (remember Im lazy). And yes also for fun and to learn a couple of things on the way too. My skills in Objective-C/Cocoa programming are not good enough yet to release a Mac OS version of this tool.
Credits
This tool is based on the discovery by Andrew Grant and he deserves credit for his work. You can check out his blog posting on the subject here.
If you want to know more about how this works, or need to modify an ID on a Mac OS version of iTunes, I recommend you to check the original HOWTO by Andrew, which describes how to do this manually, both on Mac and Windows.
iClarified has another great guide based on his work with step-by-step screenshots for manually altering the ID in both platforms.
Disclaimer
I tried to focus on making iTunes DB Cloner safe in that it will be really hard to break things. Additionally, a backup of the original files is always created just in case you need to revert back the changes.
Having said this and also for dramatic effect, I will add that I am not responsible for any damage of any kind produced by the use of this (otherwise innocent) tool.
This tool is free. It is also free of virus or malware of any form (or at least of any one detectable by an up-to-date antivirus).
#1 by Seth on November 17, 2010 - 4:16 am
This will work to sync my ipad but not my iphone 4. Any ideas?
#2 by Chris on November 17, 2010 - 8:24 pm
Doesn’t work for my iPhone 4 either. It always reverts back to the original ID. I’m wondering if there’s something with the iPhone 4 that triggers this within iTunes? Either way, this is ridiculous. Can’t believe it’s this difficult to sync music between two computers. Any help would be greatly appreciated!
#3 by Mongrel on November 21, 2010 - 6:57 am
Thanks for making my life so easy!!!!
3GS 4.1
#4 by Aidy on November 28, 2010 - 3:26 pm
Worked flawlessly on my iPhone 4, was begginning to go mad but this guide saved me
#5 by Yoann06 on November 29, 2010 - 10:05 am
Hello
tested this weekend to swap sync from laptop at work to pc at home
but didnt work , still have the message “this phone is sync with another Itune DB do you want to erase etc”
I have a 3GS on 4.1 with Itunes 10.1.0.56
any tip on that issue ?
#6 by aPish on December 2, 2010 - 8:04 pm
Will there be a Mac version?
#7 by Craig on December 6, 2010 - 9:17 am
Thanks so much for making and sharing this. I tried updating the files manually but couldn’t get it to work, your tool worked a treat on Windows 7 64bit with iTunes 10.1.56 and iPhone 4.0
#8 by Caleb B on December 8, 2010 - 11:32 pm
Thank you so much, Felipe!
I just got this to work on iTunes version 10.1.0.56
But it didn’t work at first, I had to run the program twice. The first time it appeared to have worked, but then it wanted to erase my phone as usual. It made me check the .xml file and it showed some new ID. Then I ran your program again and it worked to replace the strange, new ID.
#9 by Milen on December 10, 2010 - 12:57 am
Not working at iTunes 10.1.0.56 iPhone 4 – iOs 4.2.1. iTunes say “Transfer purchased apps to library” but erase app on iPhone.
#10 by Milen on December 12, 2010 - 6:47 pm
My way:
1. Start iTunesDBCloner ………
2. Run itunes. Click Edit> Preferences> Devices tab and check the box preventing iphones syncing automatically. Then click on the Store tab and authorise the laptop.
3. Connect iphone. Do not sync! Right click the iphone in itunes and transfer purchases.
4. Right click again and “reset warnings”.
5. Right click again and hit “backup”
6. Right click again and hit “restore from backup” (don’t make new backup if offered).
7. Left click the phone and check “manually manage music and videos”. It should now not give you a warning message and tell you you are using 2 of 5 of your itunes accounts.
Source: http://www.andrewgrant.org/2008/03/30/how-to-sync-an-iphone-with-two-or-more-computers.html
#11 by Vic on December 16, 2010 - 4:22 pm
This tool doesn’t seem to work if your iTunes library is not in the default location. I’ve setup mt iTunes library to be outside of the “My Music” folder. When starting DB Cloner it says “…unable to open primary document entity ….\iTunes Music Library.xml.
There should be an option to manually select this file. Also, my xml file is called “iTunes Library.xml”, not “iTunes Music Library.xml”.
Also, it appears Apple has figured out your iTunes 10 hack (rebuilding binary) in version 10.1+.
Win7 x63, iTunes 10.1
#12 by Lorraine on December 29, 2010 - 4:51 am
This worked out great for me!
I got the error that the iTunes file was corrupt and I hit OK and it did some kind of “gap processing” and then it did the sync and EVERYTHING was copied!
Thank you so much.
#13 by LD on January 8, 2011 - 6:27 am
I’m getting this error message…
The ID for the current iTunes library could not be read:
Invalid byte (some symbol I can’t make out) at position 1 of a 1-byte sequence.
Possible Reasons:
– iTunes has not be installed yet (it has)
– You have not Run iTunes as the current user before (I have)
Try Installing/running iTunes then execute me again.
I’m not sure what the problem is here…
#14 by google earth pro on January 23, 2011 - 2:10 pm
Valuable information and excellent design you got here! I would like to thank you for sharing your thoughts and time into the stuff you post!! Thumbs up!
#15 by Gino on January 31, 2011 - 1:22 pm
GREAT ! GREAT!
I mwas trying the “manual” method, but I got no success with iTunes10. Instead your tool works like a charm. Great and thanks!
Gino
#16 by Vega on February 13, 2011 - 10:24 am
Uh. When I opened up the cloner, the current ID was the one I was going to change it to. But iTunes still won’t let me sync.
#17 by Michael on February 20, 2011 - 3:51 pm
Yes.. with this program… make my day much easy. i´ve tried with manual method.. and i cant got it… now.. with this program… everything okay!
#18 by Dawn on March 6, 2011 - 8:30 pm
Worked brilliantly for me….THANKS!!!
#19 by Greg on March 11, 2011 - 11:12 pm
Worked like a charm with iTunes 10.2.1/iPhone 4 iOS4.3, Windows 7 Ultimate/32x using instructions from Milen of December 12 (I did not use instruction 6 being restore from backup). My iTunes library is in the standard location but the media are not.
Many thanks.
#20 by Gaby on March 16, 2011 - 2:06 am
Thank you sooooo much. Finally something simple and easy to use AND it works!!! Very happy, thanks 🙂
#21 by Zakkie on March 30, 2011 - 5:31 am
Thank you so much!
so simple…..no hex editing, no searching for keys.
#22 by Mk786 on March 31, 2011 - 10:41 am
If i use this method.. will I lose my applications? will i need to redownload them?
#23 by Lucas on April 4, 2011 - 2:50 pm
Just a question regarding the post from Milen on December 12, 2010… I haven’t done anything yet but before I do, should I follow those 7 steps before or after updating the new persistent ID with another computer?
Thanks 🙂
#24 by Adrian on April 22, 2011 - 5:39 pm
The thing tells me that he can’t read the current ID because of some “Unexpected exeption in the XMLParser” I’m not really good in that kind of stuff, so if there is anyone who might be able to help me, that would be great.
Pingback: Syncing iPhone to multiple iTunes Libraries/Computers – JBlog
#25 by dm on June 3, 2011 - 11:25 am
thank you – works perfectly
#26 by Nando on July 21, 2011 - 5:18 pm
Thanks heaps. Like other ive been trying the manual method by thanks to apple’s lack of need to keep the customers happy, the newer iTunes-mine being 10.3.1 with 3GS 4.3.4-doesn’t let you really change the persistent id of your library, it actually seems to silently change it back when you change it. This program can get around that, syncing music on my new computer right now 😀 Once again thank you guys so much.
#27 by Kelly on August 4, 2011 - 3:49 pm
Has anyone just tried patching the persistent ID in ram? That seems a lot easier than rebuilding the library. I think I’ll try this when I get home tonight.
#28 by Kelly on August 4, 2011 - 11:35 pm
Well, I tried patching the persistent ID in ram with the one from my phone, and what do you know: it worked! It was prettttty easy. Maybe I’ll make a patcher for everyone.
#29 by AV on August 11, 2011 - 11:08 am
Is a mac version on tracks ?
#30 by Mike on August 14, 2011 - 6:16 pm
WOW .. quick and easy!! and it actually works!! thanks a milll!!!!!
#31 by islam on August 25, 2011 - 6:11 pm
it is very good …. but i have a problem …………. by formating my PC … i can’t get ID of the library which is on my iphone ….. so i want a way please to get the old ID from iphone itself or by programme …. thanks in advance 🙂
#32 by Andreas on August 26, 2011 - 9:51 am
Hi Felipo,
I think your tool could be a big step to more simplicity for juggling with my iTunes-installations.
But it cannot read the right path to my library. I moved to another Volume to get more security because of a RAID :-). Is it possible to tell it the right path??
Andreas
#33 by Julio on August 29, 2011 - 2:36 pm
Mac version please?!?!
#34 by Ninjabird on August 30, 2011 - 7:42 am
Wonderful tool; you rock. I lost my old machine when the mobo crashed, and this has saved me a helluva headache with my phone. 🙂 Coders like you make the internet awesome.
Pingback: Changing iTunes Persistent ID to match your iPhone/iPod [Windows] : Alkaif
#35 by Ray on September 17, 2011 - 12:25 pm
If you are on a mac follow this guide:
http://www.iclarified.com/entry/index.php?enid=2137
But instead of changing the ID in the libary file in a hex editor, just remove everything in the file, this forces Itunes to recreate the libary from the Libary XML file with your old ID 🙂
#36 by Nightweb on October 19, 2011 - 11:42 pm
thank you worked flawlessly, no if only we could convice apple to use it XD or better yet link it to our ID’s now with the cloud XD
#37 by Claire on October 24, 2011 - 5:36 pm
Thanks so much spent hours with Andrews blog open but it wasn’t working for me, anytime I ran iTunes it kept changing back, this worked perfectly! =D
Pingback: How-To: Sync music between your iPhone and multiple computers
#38 by Gordon on November 2, 2011 - 11:29 pm
Great enthusiast of this website, a lot of your articles or blog posts have really helped me out. Looking towards up-dates!
#39 by Steve on November 3, 2011 - 6:42 pm
Works like a charm, thanks so much!
#40 by MIKE DOYLE on November 5, 2011 - 8:52 pm
I get the following error: Error while replacing binary library: String with: C: \Documents and Settings\Miked.FRC\My Music\iTunes\iTunes Library.itl and backup file: (null) failed.Check folders and file permissions.
#41 by Finally on November 19, 2011 - 3:06 am
Finally! I tried editing the files manually, but for some reason it didn’t stick. Here’s to Andrew Grant!
#42 by Tre on November 29, 2011 - 11:23 pm
for those of you with a mac, all you have to do is copy the files to a flash drive, edit them on a PC, and put them back in the folder. it does take a little bit of shuffling files around, butdoes work just fine. it worked perfectly on my mac, and now every computer in my house syncs with my iPod.
#43 by Mort Furd on December 29, 2011 - 4:39 am
What if you have two devices, i.e., an iPhone and an iPad. Each device has an ID, will your method/application work in this case?
#44 by Neill on January 9, 2012 - 3:24 am
Hey, just to let y’all know – as of 8th Jan 2012, this is working with itunes 10.5.2 (with iphone 4).
Absolutely fantastic work. This was totally wrecking my head and – BOOM – in a flash it’s fixed. Great stuff.
Also, f**k Apple. Gits.
#45 by Ratcatcher on January 22, 2012 - 9:36 pm
My data drive failed and took my iTunes library with it. Managed to recover the files and reconstruct the library from backups but then couldn’t sync with my phone.
Found this tool and it worked flawlessly!
Thanks mate, you saved me hours in rebuilding my phone from scratch 🙂
iPhone4s, iOS 5.0.1, iTunes 10.5.3.3 64bit
(Windows 7 SP1 64bit)
22nd Jan 2012
#46 by marsha mcintosh on February 4, 2012 - 3:32 pm
I got the persistent ID from my PC but cannot run the program on my iMac. do you have a mac version?
#47 by Dave on February 27, 2012 - 4:23 pm
The libraries on the two computers I want to do this with have very different contents in the library. When doing this are the libraries changed in any way? If I sync tracks from one machine will they be removed when I sync with the second one? Will the track get added to the second one?
Thanks,
Dave