This has been migration week. The next two posts will cover several migration efforts in very different spaces. The first migration I wish to discuss is how to migrate from one Apple MacBook Pro (MBP) to another. While many folks have covered use of tools like Migration Assistant or doing things by hand, I think more depth is required, as it is not as simple as one would expect after reading all the articles and comments I found. They were helpful, but nothing gave the full story.
So here is the full story. How do you migrate from an existing MacBook Pro (source) to a freshly installed MacBook Pro (target)? I had several false starts, so it behooves you to know how to enter recovery mode so you can reinstall the Mac OS X operating system if necessary. There are four approaches you can take to perform data transfer.
First: How to enter recovery mode.
During boot and before the Apple logo appears, press Command-R. This will bring you into a small boot environment that will allow you to use Disk Utility to erase the Macintosh HD and then reinstall Mac OS X from a network server. Yes, you will need a network connection to make this work. This brings us to the four modes in which to perform data transfer.
Second: What are the data-transfer modes?
There are four modes of data transfer, and only two of them are network based. I suggest wired network-based transfers, as they are fast and allow you to reinstall with ease if necessary.
Mode | Type | Time Taken |
Wireless | Network | 20+ hours to transfer in Migration Assistant |
Gigabit | Network | 3+ hours to transfer in Migration Assistant |
Thunderbolt | Peer to Peer | It should be 2+ hours but was between gigabit and wireless |
Target Disk Mode via Thunderbolt | Disk Mode | I gave up; it was taking over an hour to just read the size of data |
The first step is to boot the target MBP and enter the Migration Assistant. Once that is started, go to the source MBP and start the Migration Assistant there as well. It is in Application -> Utilities. Once you have everything set up and the contents of the migration have been listed with the corresponding sizes, you are ready to begin. Or so I thought.
Do not select everything to migrate; select just Applications. Nothing else. This will save you an immense amount of time waiting on the very slow Migration Assistant. Applications should migrate in a matter of minutes.
Now, if you select too much and have to cancel the Migration Assistant, I suggest recovering the operating system and starting again.
Once the applications have migrated, the target MacBook Pro will reboot. Once you log in, your applications will be available, but now a bit of work will need to be done. On the source MBP, turn on Remote Login to enable SSH and File Sharing via SMB for the home directory of the users involved within Settings -> Sharing. Mount the source MBP onto the target MBP. Alternatively, you can just use scp for everything.
The rest is pretty straightforward:
- Manually copy your home directory files (except Library) from the source to the target via the network.
- Manually copy (drag-n-drop) the contents of the source Library to the target Library, ignoring the Application Support directory. This took the most time, as not everything copies without error. Ignore those with errors, but make a note.
- Using the note, go into Library and then the missing directories on the source and copy the contents to the target Library/directory (drag-n-drop will work here as well).
- Now, Application Support: Copy the missing source directories to the target Library/Application Support.
- Copy the contents of the existing-source Application Support directories to the target Application Support directories. This is where scp may come in handy. I had to use scp to copy email from the source to the target, and drag-n-drop had issues.
Even with all these copies, I still needed to enter some of the license keys and configurations and even reinstall various tools. So, even this approach is not 100%, but it got me closer than before. Some of the tools I needed to handle manually:
- iCloud – reconfigure
- Synology Cloud Station – reconfigure
- Handoff – reconfigure (needed to reenable Bluetooth)
- Little Snitch – reinstall
- Letter Opener – relicense
- Apple Remote Desktop – reconfigure
- Skype – reconfigure
- Crossover Office – relicense
- Remote Desktop Client (I actually installed the latest, which added some nice features as well as updated the old) – reconfigure
- XQuartz – reinstall
- Xcode – reconfigure
There were also one or two more. However, in the end, I have everything I need migrated to my new Mac Book Pro with very few required changes.
Lastly, since the new MBPs use Turbo Boost and I would like to save my battery, I purchased Turbo Boost Switcher from rugarciap.com. This allows you to disable Intel Turbo Boost modes on your CPUs globally as well as per application. This will run the MacBook Pro cooler.
In the end, it was a pretty smooth upgrade and transition. I hope this helps. It took me a bit to find the answers I needed to go this route, as the Migration Assistant looked like it had failed. In reality, I have no idea what it was doing, as its messaging is not very good.
As I find more applications need to change, I will update the list.