#!/usr/local/bin/bash # Variables COUNT=3 # nĂºmero de rotaciones BASE=backup # nombre base para las copias WORK=/var/backups/master # directorio de trabajo IP=192.168.1.24 # ip del servidor a copiar # Directorios system ETC_DIR=/etc/ LOCALETC_DIR=/usr/local/etc/ BOOT_DIR=/boot/ BIN_DIR=/bin/ SBIN_DIR=/sbin/ # Directorios data HTDOCS_DIR=/usr/local/apache/htdocs/ MYSQL_DIR=/var/db/mysql/ MAIL_DIR=/var/spool/mail/postfix/ HOMES_DIR=/home/ ROOT_DIR=/root/ cd $WORK i=$COUNT rm -rf $BASE.$i while [ $i -gt 0 ]; do mv $BASE.$(($i-1)) $BASE.$i 2> /dev/null mv $BASE.$(($i-1))-info $BASE.$i-info 2>/dev/null i=$(($i-1)) done # Creamos estructura base # system data # |etc |htdocs # |usr_local_etc |mysql # |boot |mail # |bin |homes # |sbin |root mkdir -p $BASE.0/system/etc $BASE.0/system/usr_local_etc $BASE.0/system/boot $BASE.0/system/bin $BASE.0/system/sbin mkdir -p $BASE.0/data/htdocs $BASE.0/data/mysql $BASE.0/data/mail $BASE.0/data/homes $BASE.0/data/root echo "Rotated on `date`" > $BASE.0-info # backup system rsync -avz --delete -e ssh --link-dest=$WORK/$BASE.1/system/etc root@$IP:$ETC_DIR $WORK/$BASE.0/system/etc/ rsync -avz --delete -e ssh --link-dest=$WORK/$BASE.1/system/usr_local_etc root@$IP:$LOCALETC_DIR $WORK/$BASE.0/system/usr_local_etc/ rsync -avz --delete -e ssh --link-dest=$WORK/$BASE.1/system/boot root@$IP:$BOOT_DIR $WORK/$BASE.0/system/boot/ rsync -avz --delete -e ssh --link-dest=$WORK/$BASE.1/system/bin root@$IP:$BIN_DIR $WORK/$BASE.0/system/bin/ rsync -avz --delete -e ssh --link-dest=$WORK/$BASE.1/system/sbin root@$IP:$SBIN_DIR $WORK/$BASE.0/system/sbin/ # backup data rsync -avz --delete -e ssh --link-dest=$WORK/$BASE.1/data/mysql root@$IP:$MYSQL_DIR $WORK/$BASE.0/data/mysql/ rsync -avz --delete -e ssh --link-dest=$WORK/$BASE.1/data/htdocs root@$IP:$HTDOCS_DIR $WORK/$BASE.0/data/htdocs/ rsync -avz --delete -e ssh --link-dest=$WORK/$BASE.1/data/mail root@$IP:$MAIL_DIR $WORK/$BASE.0/data/mail/ rsync -avz --delete -e ssh --link-dest=$WORK/$BASE.1/data/homes root@$IP:$HOMES_DIR $WORK/$BASE.0/data/homes/ rsync -avz --delete -e ssh --link-dest=$WORK/$BASE.1/data/root root@$IP:$ROOT_DIR $WORK/$BASE.0/data/root/ # EOF