Home » Questions » Computers [ Ask a new question ]

How to synchronize the home folder between multiple computers?

How to synchronize the home folder between multiple computers?

"I have three computers at home, and would like to have the /home/ folder tree synchronized between the three.
Any files/folders (except those hidden) that are modified/added/removed in one of the three computers is updated in the other two."

Asked by: Guest | Views: 95
Total answers/comments: 4
Guest [Entry]

"How about to put your files in a version control system like SubVersion or git?

I don't version my entire home dir, but only a handful subdirs with some important stuff.
But I am thinking about converting to git since it seem to be better for this type of job.
(a quick search is going to send you in the right direction).

Good luck

Update:
A nice side effect with git is that it is easy to have computer specific files, since you only need to have a branch for that computer (and in git you get that by default).
So you don't need to have exactly the same files in all the computer, they only need to be similar, and have a common ""main"" branch with stuff that you want on all the different computers."
Guest [Entry]

"This won't entirely provide a solution, but it will give you a start:

Set up a cron job every so often to rsync the files. I use a command like the following:

rsync -alhz --stats --progress --exclude-from '/etc/rsync_backup_excludes.conf' / -e ssh user@10.10.0.1:/path/to/home/

This will use rsync to only copy the needed changes, not re-copy everything every time the command is ran.

--stats and --progress are optional and should probably be excluded from your scripts

the contents of my rsync_backup_excludes.conf file are:

dev/*
proc/*
lost+found/*
mnt/*
sys/*"
Guest [Entry]

"Check out lsyncd

Lsyncd watches a local directory trees event monitor interface
(inotify or fsevents). It aggregates and combines events for a few
seconds and then spawns one (or more) process(es) to synchronize the
changes. By default this is rsync. Lsyncd is thus a light-weight live
mirror solution that is comparatively easy to install not requiring
new filesystems or blockdevices and does not hamper local filesystem
performance.

Rsync+ssh is an advanced action configuration that uses a SSH to act
file and directory moves directly on the target instead of
retransmitting the move destination over the wire.

Fine-grained customizaton can be achieved through the config file.
Custom action configs can even be written from scratch in cascading
layers ranging from shell scripts to code written in the Lua language.layers ranging from shell scripts to code written in the Lua language."
Guest [Entry]

Take a look at dropbox http://www.getdropbox.com/ Cross platform Win / Linux / Mac