RFC: Synchronize Laptops
September 15th, 2008 — red_alertDear Lazyweb,
I have 3 laptops and I use both for pretty much the same tasks but in different environments (home office, at school/work or everywhere else). I’d want most of my things synchronized (i.e. 99% of my ~). What is the best idea to synchronize them?
Some facts that might matter to choose a solution:
- need to synchronize up to several thousand files.
- most files are small (mostly some KB, 10MB tops) but there’s also files of several hundred MB.
- there’s plain text as well as binary files.
- it might happen, that a single file is edited on different laptops before I snychronize them -> merging needed.
- decentralized synchronization is preferred, but I’d have a server available if necessary.
- only as much traffic as absolutely necessary.
Who can help me? What solution would you choose and why? Anything special I should think off?
So far, I could only thing about setting up a SVN server but I hope there’s a better solution.
Thanks for the help! Any idea is welcome!

September 15th, 2008 at 20:37:10
[...] http://blog.sandro-mathys.ch/2008/09/15/rfc-synchronize-laptops/ asks Hoosgot, [...]
September 15th, 2008 at 21:33:52
SVN is classically bad at storing large binary files, nor is decentralized.
You might want to look at git or another DVCS, though it really depends on how much merging you would want to do. It may be easier to treat one server as master and just use rsync and try to adjust your workflow some.
September 15th, 2008 at 22:29:20
I would say git or unison. Used unison for this for a few years happily…
September 16th, 2008 at 05:35:44
I stumbled upon unison yesterday, some hours after posting this RFC. I’ll definitely give it a try but more suggestions are still welcome :)
Thanks so far!
September 16th, 2008 at 08:52:01
I struggled with this problem for years, first attempting CVS, then moving to SVN, then trying things like unison and other keep-in-sync tools. The problem with all of them was that it required too much effort on my part. They were all prone to problems and my home directory is currently 68GB and growing, so no solution was fast enough.
The two solutions I’ve found that work best for me:
1) Use one computer. After I centralized all of my data on a single system, life was easier. Yes, I have multiple laptops and systems for different tasks, but all of my data resides in one location (and backed up to multiple sites, geographically separated).
2) Use a USB jumpdrive. This was even better than using one computer. Before my home directory grow to the size it is now, I was able to keep everything on a single USB jumpdrive and move it with me between systems. Backups were still in effect, mind you. But I never worried about any system needing a reinstall or hardware failure.
Most people ask me why my home directory is as large as it is. After years of playing the game of keeping large data sets out of my home directory, I gave up and decided that everything that is mine should be in my home directory. Music, movies, and so on. I never have to think about backing up other directories and always know where everything I care about is.
Another problem I had with tools like unison was managing a central home directory across multiple operating systems. Seems trivial, but it became somewhat of a headache.
Maybe I’m just lazy.
September 16th, 2008 at 13:48:24
You could use rdiff-backup if you have a central storage area. You backup one computer, then do a restore on the next computer. You can setup scripts to do this and it securely transfers files via SSH. It is a very simple solution and I use it to backup my laptop to my home server daily (or more often).
September 16th, 2008 at 14:16:27
dropbox ?
September 16th, 2008 at 21:41:41
Thanks again, to everyone dropping their ideas/experience.
David: true, that are two fine solutions and I already considered both, but they just don’t work out for me for different reasons (that might be a bit lazy or strange, too). Additionally, my home is currently not too big and if I ever have big files it’s multimedia stuff and for that stuff, there’s one designated laptop so I wouldn’t sync those files/dirs.
Sparks: right, that’s a great input. I’d still prefer a decentral solution like unison, but if that doesn’t work out, I’ll sure give that a try too.
Ahmed: absolutely not what I’m looking for, sorry.
September 17th, 2008 at 13:32:23
maybe http://www.conduit-project.org/ ?
September 20th, 2008 at 02:58:56
Bash script with rsync over ssh
September 27th, 2008 at 08:25:17
Thanks Fabian, I looked a bit into conduit project and it looks nice. Will investigate a bit more what that tool can do for me.