用户:Ncopa/带有 MQTT 的 Alpine 镜像
< 用户:Ncopa
dl-1:~# cat /etc/conf.d/mqtt-exec.alpine-mirror # mqtt_topics="rsync/rsync.alpinelinux.org/#" exec_user=buildozer exec_command=/usr/local/bin/alpine-mirror dl-1:~# cat /usr/local/bin/alpine-mirror #!/bin/sh -x # make sure we never run 2 rsync at the same time lockfile="/tmp/alpine-mirror.lock" if [ -z "$flock" ] ; then exec env flock=1 flock $lockfile $0 "$@" fi rsync_opts= while getopts "vP" opt; do case $opt in v|P) rsync_opts="$rsync_opts -$opt";; esac done shift $(( $OPTIND - 1 )) topic=$1 dir=$2 #src=rsync://rsync.alpinelinux.org/alpine/ src=rsync://nl.alpinelinux.org/alpine/ dest=/var/www/localhost/htdocs/alpine/ if [ -n "$dir" ] && [ -d "$dest/${dir%/*}" ]; then src="${src}${dir%/}/" dest="${dest}${dir%/}/" fi # uncomment this to only include v1.8 or newer #exclude="--exclude v1.[1-7]" mkdir -p "$dest" /usr/bin/rsync -prua \ $exclude \ --delete \ --timeout=600 \ --delay-updates \ --delete-after \ $rsync_opts \ "$src" "$dest" dl-1:~#