• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

cmake/H09-Mar-2018-120105

doc/manpage/H09-Mar-2018-162137

examples/H09-Mar-2018-971584

m4/H09-Mar-2018-1612

tests/H09-Mar-2018-1,285853

.gitignoreH A D09-Mar-2018200 2416

COPYINGH A D09-Mar-201817.6 KiB341281

ChangeLogH A D09-Mar-201813.9 KiB312282

INSTALLH A D09-Mar-2018960 5736

README.mdH A D09-Mar-20183.2 KiB4428

bin2carray.luaH A D09-Mar-20181.2 KiB4832

config.h.inH A D09-Mar-2018172 75

default-direct.luaH A D09-Mar-20184.3 KiB215120

default-rsync.luaH A D03-May-202213.2 KiB696462

default-rsyncssh.luaH A D09-Mar-201811.2 KiB634329

default.luaH A D09-Mar-20187.2 KiB434303

distclean.shH A D09-Mar-2018212 41

fsevents.cH A D09-Mar-201810.2 KiB441288

inotify.cH A D09-Mar-201810 KiB587390

lsyncd.cH A D03-May-202250.6 KiB2,9441,903

lsyncd.hH A D09-Mar-20184.2 KiB17586

lsyncd.luaH A D09-Mar-201889.6 KiB5,4303,451

README.md

1Lsyncd -- Live Syncing (Mirror) Daemon
2======================================
3Description
4-----------
5Lsyncd 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](http://rsync.samba.org/).  Lsyncd is thus a light-weight live mirror solution that is comparatively easy to install not requiring new filesystems or block devices and does not hamper local filesystem performance.
6
7Rsync+ssh is an advanced action configuration that uses a SSH to act file and directory moves directly on the target instead of re-transmitting the move destination over the wire.
8
9Fine-grained customization 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](http://www.lua.org/). This way simple, powerful and flexible configurations can be acheived.  See [the manual](https://axkibe.github.io/lsyncd/) for details.
10
11Lsyncd 2.2.1 requires rsync >= 3.1 on all source and target machines.
12
13License: [GPLv2](http://www.fsf.org/licensing/licenses/info/GPLv2.html) or any later GPL version.
14
15When to use
16-----------
17Lsyncd is designed to synchronize a local directory tree with low profile of expected changes to a remote mirror. Lsyncd is especially useful to sync data from a secure area to a not-so-secure area.
18
19Other synchronization tools
20------------------------
21[DRBD](http://www.drbd.org) operates on block device level. This makes it useful for synchronizing systems that are under heavy load. Lsyncd on the other hand does not require you to change block devices and/or mount points, allows you to change uid/gid of the transferred files, separates the receiver through the one-way nature of rsync. DRBD is likely the better option if you are syncing databases.
22
23[GlusterFS](http://www.gluster.org) and [BindFS](http://bindfs.org/) use a FUSE-Filesystem to interject kernel/userspace filesystem events.
24
25[Mirror](https://github.com/stephenh/mirror) is an asynchronous synchronisation tool that takes use of the inotify notifications much like Lsyncd. The main differences are: it is developed specifically for master-master use, thus running on a daemon on both systems, uses its own transportation layer instead of rsync and is Java instead of Lsyncd's C core with Lua scripting.
26
27Lsyncd usage examples
28---------------------
29```lsyncd -rsync /home remotehost.org::share/```
30
31This watches and rsyncs the local directory /home with all sub-directories and
32transfers them to 'remotehost' using the rsync-share 'share'.
33
34```lsyncd -rsyncssh /home remotehost.org backup-home/```
35
36This will also rsync/watch '/home', but it uses a ssh connection to make moves local on the remotehost instead of re-transmitting the moved file over the wire.
37
38Some more complicated examples, tips and tricks you can find in the [manual](https://axkibe.github.io/lsyncd/).
39
40Disclaimer
41----------
42Besides the usual disclaimer in the license, we want to specifically emphasize that the authors, and any organizations the authors are associated with, can not be held responsible for data-loss caused by possible malfunctions of Lsyncd.
43
44