#!/bin/sh # # Copyright (c) 2013 Nagios Plugins Development Team # # Originally written by Holger Weiss . # # This file is free software; the Nagios Plugins Development Team gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # # This program is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY, to the extent permitted by law; without even the implied # warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. mirrors=' ftp://ftp.fu-berlin.de/unix/network/nagios-plugins/ ftp://ftp.lysator.liu.se/pub/nagios-plugins/ ftp://mirrors.ustc.edu.cn/nagios-plugins/ ' # # Our mirrors: # # GERMANY # # URLs: # - ftp://ftp.fu-berlin.de/unix/network/nagios-plugins/ # # Features: # - IPv4 # - 10 GBit/s # # Contacts: # - Mirror Admins # - Holger Weiss # # Home page: # - http://www.fu-berlin.de/en/ # # SWEDEN # # URLs: # - ftp://ftp.lysator.liu.se/pub/nagios-plugins/ # - http://ftp.lysator.liu.se/pub/nagios-plugins/ # - https://ftp.lysator.liu.se/pub/nagios-plugins/ # - rsync://ftp.lysator.liu.se/pub/nagios-plugins/ # # Features: # - IPv4 # - IPv6 # - 1 GBit/s # # Contacts: # - Mirror Admins # - Niclas Zeising # # Home page: # - http://www.lysator.liu.se/english.html # # CHINA # # URLs: # - ftp://mirrors.ustc.edu.cn/nagios-plugins/ # - http://mirrors.ustc.edu.cn/nagios-plugins/ # - rsync://mirrors.ustc.edu.cn/nagios-plugins/ # # Features: # - IPv4 # - IPv6 # # Contacts: # - Mirror Admins # - Roy Zhang # # Home page: # - http://lug.ustc.edu.cn/ # set -e set -u umask 022 export PATH='/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin' prefix='/home/plugins' myself=${0##*/} download_dir="$prefix/web/download" temp_dir=$(mktemp -d "/tmp/$myself.XXXXXX") trap 'rm -rf "$temp_dir"' EXIT cd "$temp_dir" date -d 'yesterday' '+%F' >'expected' for mirror in $mirrors do url="${mirror%/}/timestamp" if curl -s -S -O -m 600 --ftp-method 'nocwd' "$url" >'curl.log' 2>&1 then cmp -s 'expected' 'timestamp' \ || echo >&2 "$mirror is outdated ($(cat 'timestamp'))." else echo >&2 "Cannot fetch $url: $(cat 'curl.log')" fi done cd "$OLDPWD" date '+%F' >"$download_dir/timestamp"