Sites mirrors » Historique » Révision 2
Révision 1 (sacha, 10/12/2018 11:21) → Révision 2/3 (sacha, 10/12/2018 11:23)
# Sites mirrors ## OpenBSD Scripts Irisa: pandore|11:04:27|:~/Downloads/mirror$cat cvs-update-src.sh ~~~ #!/bin/bash set -o nounset # Treat unset variables as an error when performing parameter expansion and exits with a non-zero status. rm -f ~/log.cvsup touch ~/log.cvsup echo "started at" `date +%H:%M:%S` >> ~/log.cvsup # Pour plus de clarte/simplicite remplacement du "cd ftp/src" # Le "ftp" etant un lien symbolique vers le "bon" espace # cd ftp/src REP="/home/ftp/pub/mirrors/OpenBSD/src" if [ ! -d "${REP}" ] ;then echo "Erreur - Repertoire ""${REP}"" inexistant" >> ~/log.rsync; exit 1; fi cd ${REP} # # # #export CVSROOT=anoncvs@anoncvs.ca.openbsd.org:/cvs export CVSROOT=anoncvs@anoncvs.eu.openbsd.org:/cvs #export CVSROOT=anoncvs@anoncvs.comstyle.com:/cvs CVS_RSH="/usr/bin/ssh" cvs -d ${CVSROOT} -q update -AdP >> ~/log.cvsup 2>&1 chmod -R o+rX ${REP} echo "ended at" `date +%H:%M:%S` >> ~/log.cvsup cat ~/log.cvsup | mail -s "[ftp] cvs-update" your.email@domain.ext your.other.email@domain.ext ~~~ pandore|11:05:46|:~/Downloads/mirror$cat mirror.sh ~~~ #!/bin/bash set -o nounset # Treat unset variables as an error when performing parameter expansion and exits with a non-zero status. # # Il y a deja un rsync qui "tourne" on n'en lance pas un nouveau # pgrep -u `id -u` rsync > /dev/null 2>&1 if [ $? = 0 ] ; then exit 0; fi rm -f ~/log.rsync touch ~/log.rsync echo "started at" `date +%H:%M:%S` >> ~/log.rsync # Pour plus de clarte/simplicite remplacement du "cd ftp" # Ce "ftp" etant un lien symbolique vers le "bon" espace # En plus c'est un peu plus "sure" dans le contexte d'un "rsync ... --delete ...." REP="/home/ftp/pub/mirrors/OpenBSD" if [ ! -d "${REP}" ] ;then echo "Erreur - Repertoire ""${REP}"" inexistant" >> ~/log.rsync; exit 1; fi #MIRROR=rsync://ftp.belnet.be/packages/openbsd/ #MIRROR=rsync://anga.funkfeuer.at/OpenBSD/ #MIRROR=rsync://rsync.it.su.se/OpenBSD/ #MIRROR=rsync://ftp.openbsd.dk/OpenBSD/ #MIRROR=rsync://rsync.de.openbsd.org/OpenBSD MIRROR=rsync://ftp.eu.openbsd.org/OpenBSD/ #MIRROR=rsync://ftp.fr.openbsd.org/OpenBSD/ #################################### # identify last version available #################################### echo "check for OpenBSD versions availables" >> ~/log.rsync 2>&1 major=5 minor=1 current_version=5.0 old_version=4.9 version_to_remove=4.8 wget --spider --quiet ftp://ftp.eu.openbsd.org/pub/OpenBSD/$major.$minor/ result=$? while [ $result -eq 0 ] do echo "version $major.$minor exits " >> ~/log.rsync 2>&1 version_to_remove=$old_version old_version=$current_version current_version=$major.$minor minor=$(( $minor + 1 )) if [ $minor -eq 10 ]; then major=$(( $major + 1 )) minor=0 fi wget --spider --quiet ftp://ftp.eu.openbsd.org/pub/OpenBSD/$major.$minor/ result=$? done echo "current version to rsync = $current_version" >> ~/log.rsync 2>&1 echo "old version to rsync = $old_version" >> ~/log.rsync 2>&1 echo "version to remove if exist= $version_to_remove" >> ~/log.rsync 2>&1 cd ${REP} rm -rfv $version_to_remove >> ~/log.rsync 2>&1 rsync -azv --delete ${MIRROR}/$current_version . >> ~/log.rsync 2>&1 rsync -azv --delete ${MIRROR}/OpenBGPD . >> ~/log.rsync 2>&1 rsync -azv --delete ${MIRROR}/OpenNTPD . >> ~/log.rsync 2>&1 rsync -azv --delete ${MIRROR}/OpenSSH . >> ~/log.rsync 2>&1 rsync -azv --delete ${MIRROR}/doc . >> ~/log.rsync 2>&1 rsync -azv --delete ${MIRROR}/patches . >> ~/log.rsync 2>&1 rsync -azv --delete ${MIRROR}/snapshots . >> ~/log.rsync 2>&1 rsync -azv --delete ${MIRROR}/timestamp . >> ~/log.rsync 2>&1 rsync -azv --delete ${MIRROR}/tools . >> ~/log.rsync 2>&1 rsync -azv --delete ${MIRROR}/$old_version . >> ~/log.rsync 2>&1 chmod -R o+rX ${REP} echo "ended" `date +%H:%M:%S` >> ~/log.rsync cat ~/log.rsync | mail -s "[ftp] rsync-mirror" your.email@domain.ext your.other.email@domain.ext ~~~ ## OPNSense ~~~ rsync.opnsense.org::opnsense-dist I tested it from our location using: rsync -avz --delete --safe-links rsync.opnsense.org::opnsense-dist <target> ~~~ Ad: When it’s setup, just point me the location and I will update our website to list your mirror.