Fast Two Way Sync with Unison, Lsyncd and Autossh(cerebralmastication.com)
cerebralmastication.com
Fast Two Way Sync with Unison, Lsyncd and Autossh
http://www.cerebralmastication.com/2011/04/fast-two-way-sync-in-ubuntu/
5 comments
I tried Unison before and gave it up. Not because it is not a great software. But because two way sync itself is very dangerous in my eyes. If I made some stupid mistakes in one side, my all data gone.
I've been considering treating each directory as a separate version control target, so that the archive server would never lose anything. I have the same qualms - although so far, Unison has worked perfectly for me, even in cases where in retrospect that surprised me.
Can Unison intelligently control bandwidth allocation?
One of the reasons I use dropbox, even though I'm a hacker, is because Dropbox seems to sense my internet usage, and throttle its bandwidth appropriately.
Until unison (or some other solution) can work seamlessly in the background, when I'm working online, I prefer Dropbox.
One of the reasons I use dropbox, even though I'm a hacker, is because Dropbox seems to sense my internet usage, and throttle its bandwidth appropriately.
Until unison (or some other solution) can work seamlessly in the background, when I'm working online, I prefer Dropbox.
Unison rocks. I've been using it for a couple of months now to move back and forth from a Windows desktop to a Windows laptop through an archive on a central Fedora file server, and it just ... works.
It doesn't handle mailboxes all that well, I have to admit (but then, neither do I; my mailboxes tend to grow towards infinity).
It doesn't handle mailboxes all that well, I have to admit (but then, neither do I; my mailboxes tend to grow towards infinity).
I can definitely see it not working well for mbox, but maildir it ought to work fine since every message is a separate file. But even then I do all my mail through imap anyway since it's a much nicer interface for keeping that all the same everywhere for email.
[deleted]
This seems way more complicated than the options the author offers in the first 80% of the article. If you consider your time valuable, just use those services.
It is a bit complicated, but I think the author's writing style may make it sound more complicated than it is. Yes, it'll take a little time upfront to get it going, but this, to me, seems like a solution that would require very little monitoring/tweaking/maintenance after it's been setup.
I agree, plus if you take the time to get this working, the only limit is your server (assigned) space for file storage.
I hope there will be a follow-up with step-by step info, I am interested.
I hope there will be a follow-up with step-by step info, I am interested.
Yes I use a similar one using unison on my laptop myself. Once setup the only time I ever have to do anything special is when there's a conflict since it won't destroy a file that I've altered on both sides before a sync has happened. This happens rarely (usually to a configuration file for some software I've put in the directory for syncing) and is the behavior that I want, e.g. don't destroy local changes automatically let me decide what to do about it so that there's no unintentional data loss. And while there is a conflict it will continue to happily sync everything else happily ignoring the conflicts.
Edit: I should also say that I'm not using lsyncd or anything like that to manage it, just cron on the laptop. I initiate it one way at a regular time. Though using lsycnd does sound interesting. I also didn't use autossh and instead opted for OpenVPN since I knew I was going to want the other benefits of having a VPN at the time (being able to tunnel traffic easily for the most part)
Edit: I should also say that I'm not using lsyncd or anything like that to manage it, just cron on the laptop. I initiate it one way at a regular time. Though using lsycnd does sound interesting. I also didn't use autossh and instead opted for OpenVPN since I knew I was going to want the other benefits of having a VPN at the time (being able to tunnel traffic easily for the most part)
For ultra-fast one-way sync, I built Dripbox: https://github.com/epall/dripbox