/
proc
/
self
/
root
/
scripts
/
Upload File
HOME
#!/bin/bash # Variables a modificar BACKUP_HOST="10.2.225.154" BACKUP_DESTINATION="/mnt/storage_3/Compartidos/cPanel/ar152/" # No es necesario modificar BACKUP_USER="root" BACKUP_SOURCE="/home/*" #Obtenemos la fecha BCK_DATE=`date +'%Y-%d-%m'` # La siguiente fecha es para hacer un rsync con --delete cada 6 meses CHK_DATE=`date +'%d%m'` echo "Empezamos backup del $BCK_DATE" #Revisamos que exista el directorio /backup DIRECTORY="/backup" if [[ ! -d "$DIRECTORY" ]] then echo "$DIRECTORY not exists, creating...." mkdir /backup fi #Creamos la carpeta del backup de este dia mkdir /backup/$BCK_DATE #Entramos al directorio de los usuarios y generamos los backups de la estructura de cada cuenta cd /var/cpanel/users for CPUSER in * do echo $user echo -e "\nNow processing ${CPUSER} ..." echo "/scripts/pkgacct --skiphomedir ${CPUSER} /backup/$BCK_DATE" /scripts/pkgacct --skiphomedir ${CPUSER} /backup/$BCK_DATE/ done # Hacemos rsync de los tar.gz de las cuentas echo "Enviando las estructuras de la cuenta tar.gz al FreeNAS" >> /var/log/backup_cpanel.log rsync -q -a -e ssh /backup/* $BACKUP_USER@$BACKUP_HOST:$BACKUP_DESTINATION 2>&1 # Al terminal eliminamos los tar.gz echo "Eliminando archivos de /backup/ ...." >> /var/log/backup_cpanel.log rm -rf /backup/$BCK_DATE echo "Empezando con el rsync, el log verlo en /var/log/rsync.log ..." >> /var/log/backup_cpanel.log # Lo siguiente por favor NO TOCAR # Cada 6 meses hacemos un rsync eliminando diferenciales. if [ "$CHK_DATE" -eq "0101" ] || [ "$CHK_DATE" -eq "0106" ] then echo "Haciendo rsync y eliminando archivos que ya no existan de las cuentas ..." >> /var/log/backup_cpanel.log rsync --log-file=/var/log/rsync.log --exclude 'virtfs' -q -a --delete -e ssh $BACKUP_SOURCE $BACKUP_USER@$BACKUP_HOST:$BACKUP_DESTINATION/userdata/ else echo "Haciendo rsync de las cuentas en el /home/ ..." >> /var/log/backup_cpanel.log rsync --log-file=/var/log/rsync.log --exclude 'virtfs' -q -a -e ssh $BACKUP_SOURCE $BACKUP_USER@$BACKUP_HOST:$BACKUP_DESTINATION/userdata/ fi echo "Finalizado el backup $BCK_DATE, por favor verificar que esté todo correcto." >> /var/log/backup_cpanel.log