X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=README;h=756e2bef17b280e4f113a466833e5f1bb154fcab;hb=667d0832254ac6c00637b0b619ecce8081407d8c;hp=0cecf79d23b3b7b7fe31fa9774eb3804e2074980;hpb=4b2ad230f3883bba27ff81b0781a2a77f78a850b;p=cloudstore.git diff --git a/README b/README index 0cecf79..756e2be 100644 --- a/README +++ b/README @@ -2,13 +2,46 @@ Central rsync backup server Features: -- rsync-piper +sudo ./rsync-piper.pl + - generate rsync configuration based on content of RSYNC_DIR/users - start rsync server on specified port - follow rsync transfer log, parse it and trigger events - - file/dir metadata in json (with VFS-like API) - - deduplicate files using md5 pool and hardlinks - - gearman log shipping in json format + - file/dir metadata in json (with VFS-like API) + - deduplicate files using md5 pool and hardlinks + - gearman log shipping in json format + - support login+host usernames for client secrets + - push md5sum file to create files from server's md5 pool + - track quota usage using uid/gid using libnss-extrausers + - store md5 sums generated by rsync transfer in md5 file attr + - force sane permissions on files (important for Windows rsync client) + +create-user.sh +remove-user.sh + - create/remove user's directory and data + +test.sh + - excercise rsync server to test basic operation and deduplication + +FULL=1 ./user-md5sum.pl u2001 | md5sum -c + - generates md5sum file for user with optional full paths for easy scrubing + + +Installation on Debian: + +$ ./bin/debian-install.sh + +Disk quota calculation depends on custom POSIX ids created using libnss-extrausers +so ensure that /etc/nsswitch.conf has extrausers enabled: + +$ egrep '^(passwd|group):' /etc/nsswitch.conf +passwd: compat extrausers +group: compat extrausers + +Now you will want to end env.sh configuration for this slice + +$ vi env.sh + +And create ZFS filesystem and md5 pool in it: + +$ sudo ./bin/init-slice.sh -- data-worker - - gearman worker to store rsync transfer log into PostgreSQL -