diff options
Diffstat (limited to 'start-rsyncd.sh')
-rwxr-xr-x | start-rsyncd.sh | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/start-rsyncd.sh b/start-rsyncd.sh new file mode 100755 index 0000000..3fa22ee --- /dev/null +++ b/start-rsyncd.sh @@ -0,0 +1,34 @@ +#!/bin/bash + +set -e + +while :; do + port=$RANDOM + [[ $port -gt 1024 && $port -lt 65535 ]] && break +done + +tmpdir=$(mktemp -d /tmp/start-rsyncd.sh.XXXXXX) + +cleanup() { + rm -rf "$tmpdir" +} + +trap cleanup EXIT INT TERM + +cat <<EOF >"$tmpdir/rsyncd.conf" +max connections = 1 +pid file = $tmpdir/pid +lock file = $tmpdir/lock +use chroot = no +log file = /dev/stderr +read only = true +port = $port +uid = $USER +[share] + path = $PWD +EOF + +echo "use: rsync -rtP --port $port \"rsync://$(hostname -f)/share/\" \"share-copy/\"" +echo "stating rsyncd..." +rsync --daemon --no-detach --config="$tmpdir/rsyncd.conf" + |