1 Central rsync backup server
6 - generate rsync configuration based on content of RSYNC_DIR/users
7 - start rsync server on specified port
8 - follow rsync transfer log, parse it and trigger events
9 - file/dir metadata in json (with VFS-like API)
10 - deduplicate files using md5 pool and hardlinks
11 - gearman log shipping in json format
12 - support login+host usernames for client secrets
13 - push md5sum file to create files from server's md5 pool
14 - track quota usage using uid/gid using libnss-extrausers
15 - store md5 sums generated by rsync transfer in TokyoCabinet database
16 - force sane permissions on files (important for Windows rsync client)
20 - create/remove user's directory and data
23 - excercise rsync server to test basic operation and deduplication
25 FULL=1 ./user-md5sum.pl u2001 | md5sum -c
26 - generates md5sum file for user with optional full paths for easy scrubing
29 Installation on Debian:
31 $ ./bin/debian-install.sh
33 Disk quota calculation depends on custom POSIX ids created using libnss-extrausers
34 so ensure that /etc/nsswitch.conf has extrausers enabled:
36 $ egrep '^(passwd|group):' /etc/nsswitch.conf
37 passwd: compat extrausers
38 group: compat extrausers
40 Now you will want to end env.sh configuration for this slice
44 And create ZFS filesystem and md5 pool in it:
46 $ sudo ./bin/init-slice.sh