Keep Your Macs in Sync the Hard Way

Recently I switched from a 13” Macboo Pro as my primary (and only) machine to an 11” Macbook Air / 27” iMac combo. I’ve been traveling for work more these days so the Air has been really nice, and I wanted a bigger screen at home and a little more power as well so the 27” iMac (I’ll be honest, the real reason I wanted more power was for Diablo III). However, with multiple machines, keeping them in sync can be an issue. 

At first I tried to rely on dropbox and git to make it easy to switch from machine to machine, but that only covers my code (and git and dropbox do not really play that well together, trust me). Any applications I install, settings I change, or files I download on one machine wouldn’t be available on the other. Add to that the fact that I cheaped out on the iMac and refused to pay the Apple premium for a solid state hard drive, which made the iMac feel painfully slow compared to my Air despite having a much beefier processor and 4 times the RAM, and I decided to try a rather radical idea.

Apple recently started including their new Thunderbolt ports which supposedly allows for transfers at up to 10 Gbps (roughly 20 times faster than USB 2.0). Apple also for years has allowed you to put Macs into “target disk mode” which basically turns them into extremely expensive external hard drives you can boot other Macs from. My crazy idea was to use my Macbook Air as an external hard drive for my iMac when I wanted more power and screen real estate. When I first attempted this, a bug in OSX which actually degraded the transfer speeds over Thunderbolt in target disk mode derailed my efforts. Luckily, Apple patched the bug and I was able to get the transfer speeds I needed. 

So there are some positives and negatives to this approach. One major positive is that I no longer have to worry about keeping my files in sync across machines because they are essentially the same machine! No more file conflicts and incongruent settings. The way I set things up on my Air are they way they will be when I get home. Another big benefit has been performance. The Thunderbolt connection really flies. In fact, when booting my iMac from my Air, it’s as fast as booting the Air by itself. All the speed gains from having a solid state drive are realized on my iMac with this setup. Saves me the money and effort of installing an SSD in my iMac myself (which is a pain, trust me). 

The biggest downside is that to switch machines, I basically have to shut down my whole system in order to put it into target disk mode. That means I have to close all my apps and disrupt my workflow just to move to a bigger screen. There’s no way that I know of to basically force a hibernation and wake it back up from another machine (if you know of one, let me know). For some, this might be a deal breaker, but I’ve actually gotten quite used to it. I find it someone refreshing to clear my desktop of all processes when I take a break and move to a different machine or workspace, and I’ve gotten a pretty good workflow in place for getting my work environment back and running quickly. 

The ultimate solution would be a full HD and RAM sync to dropbox, though, so that I could access the same running session from any machine at any time. I’ve heard rumors that some of the dropbox employees are doing just this; not the in memory stuff, but they basically have their entire HD’s syncing back to dropbox. I think we may see this kind of service from them or someone else in the near future and I’ll be the first to jump on board. Until then, I’m pretty happy with my wacky syncing solution, though.