Updated readme file
This commit is contained in:
parent
3e9e560cfd
commit
535f8ccb1f
36
README.md
36
README.md
|
@ -1,34 +1,35 @@
|
|||
# osync [](https://travis-ci.org/deajan/osync) [](https://github.com/deajan/osync/releases/latest)
|
||||
|
||||
A two way filesync script with fault tolerance, resume, soft deletion, conflictual file backups running on bash (linux, BSD and virtually any system supporting bash).
|
||||
A two way filesync script running on bash Llinux, BSD, Android, MacOSX, Cygwin, MSYS2, Win10 bash and virtually any system supporting bash).
|
||||
File synchronization is bidirectional, and can be run manually, as scheduled task, or triggered on file changes in deamon mode.
|
||||
It is a command line tool rsync wrapper with a lot of additional features baked in.
|
||||
|
||||
About
|
||||
-----
|
||||
osync provides the following capabilities
|
||||
|
||||
|
||||
- Local-Local and Local-Remote sync
|
||||
- Fault tolerance with resume scenarios
|
||||
- File ACL and extended attributes synchronization
|
||||
- Full script Time control
|
||||
- Soft deletions and multiple backups handling
|
||||
- Before / after run command execution
|
||||
- Email alerts
|
||||
- Logging facility
|
||||
- Soft deletition and multiple backups handling
|
||||
- Before / after command execution
|
||||
- Time control
|
||||
- Directory monitoring
|
||||
- Running on schedule or as daemon
|
||||
- Batch runner for multiple sync tasks with rerun option for failed sync tasks
|
||||
- ACL synchronization
|
||||
|
||||
osync is a stateful synchronizer. This means that it doesn't have to monitor files for changes. Instead, it compares replica file lists between two runs.
|
||||
A full run takes about 2 seconds on a local-local replication and about 10 seconds on a local-remote replication.
|
||||
osync is a stateful synchronizer. This means it's agentless and doesn't have to monitor files for changes. Instead, it compares replica file lists between two runs.
|
||||
A full run takes about 2 seconds on a local-local replication and about 7 seconds on a local-remote replication.
|
||||
Disabling some features file like attributes preservation and disk space checks may speed up execution.
|
||||
osync uses a initiator / target sync schema. It can sync local to local or local to remote directories. By definition, initiator replica is always a local directory on the system osync runs on.
|
||||
osync uses pidlocks to prevent multiple concurrent sync processes on/to the same initiator / target replica.
|
||||
You may launch concurrent sync processes on the same system but as long as the replicas to synchronize are different.
|
||||
Multiple osync tasks may be launched sequentially by osync osync-batch tool.
|
||||
|
||||
Currently, it has been tested on CentOS 5.x, 6.x, 7.x, Fedora 22-24, Debian 6-7, Linux Mint 14-18, Ubuntu 12.04-12.10, FreeBSD 8.3-10.3, Mac OS X and pfSense 2.3x.
|
||||
Microsoft Windows is supported via MSYS or Cygwin.
|
||||
Currently, it has been tested on CentOS 5.x, 6.x, 7.x, Fedora 22-25, Debian 6-8, Linux Mint 14-18, Ubuntu 12.04-12.10, FreeBSD 8.3-11, Mac OS X and pfSense 2.3x.
|
||||
Microsoft Windows is supported via MSYS or Cygwin and now via Windows 10 bash.
|
||||
Android support works via busybox (tested on Termux).
|
||||
|
||||
Installation
|
||||
|
@ -42,7 +43,7 @@ You may also get the last development version at https://github.com/deajan/osync
|
|||
|
||||
$ git clone https://github.com/deajan/osync
|
||||
$ cd osync
|
||||
$ sh install.sh
|
||||
$ bash install.sh
|
||||
|
||||
osync will install itself to /usr/local/bin and an example configuration file will be installed to /etc/osync
|
||||
|
||||
|
@ -154,12 +155,19 @@ Systemd specific (one service per config file)
|
|||
|
||||
Contributions
|
||||
-------------
|
||||
Bug fixes and ideas are welcome. When submitting a PR, please be sure to modify files in dev directory (dev/n_osync.sh, dev/ofunctions.sh, dev/common_install.sh etc) instead of osync.sh and others which are autogenerated.
|
||||
Consider reading CODING_STYLE.TXT before submitting a patch.
|
||||
All kind of contribs are welcome.
|
||||
|
||||
When submitting a PR, please be sure to modify files in dev directory (dev/n_osync.sh, dev/ofunctions.sh, dev/common_install.sh etc) as most of the main files are generated via merge.sh.
|
||||
When testing your contribs, generate files via merge.sh or use bootstrap.sh which generates a temporary version of n_osync.sh with all includes.
|
||||
|
||||
Unit tests are run by travis on every PR, but you may also run them manually which adds some tests that travis can't do, via dev/tests/run_tests.sh
|
||||
SSH port can be changed on the fly via environment variable SSH_PORT, eg: SSH_PORT=2222 dev/tests/run_tests.sh
|
||||
|
||||
Consider reading CODING_CONVENTION.TXT before submitting a patch.
|
||||
|
||||
Troubleshooting
|
||||
---------------
|
||||
You may find osync's logs in /var/log/osync.*.log (or current directory if /var/log is not writable).
|
||||
You may find osync's logs in /var/log/osync.[INSTANCE_ID].log (or current directory if /var/log is not writable).
|
||||
Additionnaly, you can use the --verbose flag see to what actions are going on.
|
||||
|
||||
Author
|
||||
|
|
Loading…
Reference in New Issue