Différences entre les versions de « Rsync script »
De BlaxWiki
Aller à la navigationAller à la recherche (Page créée avec « Script de Rsync entre filer, l interet de ce script et la sortie vers les logs d info sur le début et fin === Script === <pre> #!/bin/bash BASE="/opt/mnt" SRC="filer1-c... ») |
|||
| Ligne 117 : | Ligne 117 : | ||
Sun Jan 1 00:55:28 CET 2017 : DEBUG : /usr/bin/rsync -vrpogtlH --exclude=swapfile --exclude=*.vmdk --exclude=*.vswp --exclude-from=/opt/agarik/scripts/sync_filers_ignore.txt --delete /opt/mnt/filer4a/abbe_pierre /opt/mnt/isilon-nl400-node03/filer4a/ (filer4a/abbe_pierre) | Sun Jan 1 00:55:28 CET 2017 : DEBUG : /usr/bin/rsync -vrpogtlH --exclude=swapfile --exclude=*.vmdk --exclude=*.vswp --exclude-from=/opt/agarik/scripts/sync_filers_ignore.txt --delete /opt/mnt/filer4a/abbe_pierre /opt/mnt/isilon-nl400-node03/filer4a/ (filer4a/abbe_pierre) | ||
</pre> | </pre> | ||
[[Catégorie:Script]] | |||
Version actuelle datée du 5 avril 2018 à 16:22
Script de Rsync entre filer, l interet de ce script et la sortie vers les logs d info sur le début et fin
Script[modifier]
#!/bin/bash
BASE="/opt/mnt"
SRC="filer1-ctrl1-mds filer1-ctrl2-mds filera-vol0 filerb-vol0"
DST="isilon-nl400-node03"
LOCK="/var/lock/rsync_netapp_isilon.lock"
LOG="/var/log/synchro.log"
EXCLUDED_SRC=":.ha:.snapshot:ump_data:ump_server:dt-plans.auchan.fr:old:"
EXCLUDED_DIR="/opt/agarik/scripts/sync_filers_ignore.txt"
RSYNC=/usr/bin/rsync
TOUCH="/bin/touch"
BASENAME="/bin/basename"
DIRNAME="/usr/bin/dirname"
ECHO="/bin/echo"
RM="/bin/rm"
GREP="/bin/grep"
FIND="/bin/find"
DATE="/bin/date"
HOSTNAME=`/bin/hostname`
VISION="/opt/agarik/Vision/bin/bb_send_raw"
DISPLAY="supervision.agarik.com"
SED="/bin/sed"
TARGET="`$ECHO $HOSTNAME | $SED -e 's/\./,/g'`"
SERVICE="backup"
function gecho()
{
$ECHO "`$DATE` : $1" >> $LOG
}
if [ -f $LOG ]; then
mv -f $LOG $LOG.1
fi
gecho "INFO : Debut"
if [ -e $LOCK ];then
gecho "ERROR : Le lock $LOCK est toujours present";
exit
else
gecho "INFO : Mise en place du lock"
$TOUCH $LOCK;
fi
Error=0
gecho "INFO : Debut du RSYNC"
cd $BASE
for src in `$FIND $SRC -maxdepth 1 -type d`
do
basesrc=`$BASENAME $src`
dirsrc=`$DIRNAME $src`
if [ `echo $EXCLUDED_SRC| $GREP -c ":$basesrc:"` -eq 1 -o "$src" == "$basesrc" ]; then
gecho "DEBUG : Ignore de $BASE/$src"
else
gecho "INFO : Rsync de $BASE/$src"
gecho "DEBUG : $RSYNC -vrpogtlH --exclude=swapfile --exclude=*.vmdk --exclude=*.vswp --exclude-from=$EXCLUDED_DIR --delete $BASE/$src $BASE/$DST/$dirsrc/ ($src)"
Date1=$($DATE +"%s")
$RSYNC -vrpogtlH --exclude=swapfile --exclude=*.vmdk --exclude=*.vswp --exclude-from=$EXCLUDED_DIR --delete $BASE/$src $BASE/$DST/$dirsrc/ >> $LOG
Date2=$($DATE +"%s")
Diff=$(($Date2-$Date1))
Lenght=`$DATE -u -d @"$Diff" +'%-Hh %-Mm %-Ss'`
case $? in
"0" | "24" ) gecho "DEBUG : Rsync de $BASE/$src termine avec succes en $Lenght"
;;
"*") gecho "ERROR : Erreur lors de la synchro de $BASE/$src, verifier le fichier $LOG"
Error=1
;;
esac
fi
done
gecho "INFO : Fin du RSYNC"
gecho "INFO : Suppression du lock"
$RM -f $LOCK
gecho "INFO : Emission vers la supervision"
State="green"
if [ $Error == 1 ]; then
State="red";
fi
gecho "DEBUG : $VISION $DISPLAY \"status+4000 $TARGET.$SERVICE $State `$DATE` $SERVICE\""
$VISION $DISPLAY "status+4000 $TARGET.$SERVICE $State `$DATE` $SERVICE
`$GREP ' ERROR ' $LOG`
====
`$GREP ' INFO ' $LOG`
Logs[modifier]
Sun Jan 1 00:55:27 CET 2017 : INFO : Rsync de /opt/mnt/filer4a/autoroutes-trafic Sun Jan 1 00:55:27 CET 2017 : DEBUG : /usr/bin/rsync -vrpogtlH --exclude=swapfile --exclude=*.vmdk --exclude=*.vswp --exclude-from=/opt/agarik/scripts/sync_filers_ignore.txt --delete /opt/mnt/filer4a/autoroutes-trafic /opt/mnt/isilon-nl400-node03/filer4a/ (filer4a/autoroutes-trafic) sending incremental file list Sun Jan 1 00:55:27 CET 2017 : DEBUG : Rsync de /opt/mnt/filer4a/autoroutes-trafic termine avec succes en 0h 0m 0s Sun Jan 1 00:55:27 CET 2017 : INFO : Rsync de /opt/mnt/filer4a/dassault_server Sun Jan 1 00:55:27 CET 2017 : DEBUG : /usr/bin/rsync -vrpogtlH --exclude=swapfile --exclude=*.vmdk --exclude=*.vswp --exclude-from=/opt/agarik/scripts/sync_filers_ignore.txt --delete /opt/mnt/filer4a/dassault_server /opt/mnt/isilon-nl400-node03/filer4a/ (filer4a/dassault_server) sending incremental file list dassault_server/ dassault_server/delivery.fr.3ds.com/ sent 145 bytes received 382 bytes 351.33 bytes/sec total size is 0 speedup is 0.00 Sun Jan 1 00:55:28 CET 2017 : DEBUG : Rsync de /opt/mnt/filer4a/dassault_server termine avec succes en 0h 0m 1s Sun Jan 1 00:55:28 CET 2017 : INFO : Rsync de /opt/mnt/filer4a/les84-data Sun Jan 1 00:55:28 CET 2017 : DEBUG : /usr/bin/rsync -vrpogtlH --exclude=swapfile --exclude=*.vmdk --exclude=*.vswp --exclude-from=/opt/agarik/scripts/sync_filers_ignore.txt --delete /opt/mnt/filer4a/les84-data /opt/mnt/isilon-nl400-node03/filer4a/ (filer4a/les84-data) sending incremental file list Sun Jan 1 00:55:28 CET 2017 : DEBUG : Rsync de /opt/mnt/filer4a/les84-data termine avec succes en 0h 0m 0s Sun Jan 1 00:55:28 CET 2017 : INFO : Rsync de /opt/mnt/filer4a/abbe_pierre Sun Jan 1 00:55:28 CET 2017 : DEBUG : /usr/bin/rsync -vrpogtlH --exclude=swapfile --exclude=*.vmdk --exclude=*.vswp --exclude-from=/opt/agarik/scripts/sync_filers_ignore.txt --delete /opt/mnt/filer4a/abbe_pierre /opt/mnt/isilon-nl400-node03/filer4a/ (filer4a/abbe_pierre)