= rsync.sh
#!/bin/bash
#
# parametros RSYNC
# - r == recursive
# - p == preserve permisions
# - t == preserve times
# - q == supress non-error messages
# - o == preserve owner
# - g == preserve group
# - L == copy-links
# - v == verbose
RSYNC=/usr/bin/rsync
SSH=/usr/bin/ssh
KEY=/root/.ssh/rsa_192.168.3.199
RUSER=backup
RHOST=192.168.3.199
RPATH=/home/backup
LPATH=/home/backups/wardog.eurorscg.es
TITLE="to_be_changed"
DATE=`eval date +%y%m%d`
# $RSYNC -az -e "$SSH -i $KEY" $RUSER@$RHOST:$RPATH $LPATH
$RSYNC -rL -ptog -q --log-file="$DATE-$TITLE.tmp" -e "$SSH -i $KEY" $RUSER@$RHOST:$RPATH $LPATH > /dev/null
mail -s "RSYNC $TITLE finished" mate@eurorscg.es < $DATE-$TITLE.tmp 2>/dev/null
rm $DATE-$TITLE.tmp
#!/bin/bash
#parámetros RSYNC
# -a = rlptgoD
# -r = recursive
# -l = copia symlinks como symlinks
# -p = copia los permisos
# -t = conserva fecha de modificación
# -g = conserva el grupo del fichero
# -o = conserva el usuario del fichero
# -D = ficheros especiales (?)
# -v = verbose
# -b = backup
# -h = human readable (nums)
# --delete = borra ficheros en destino no existentes en origen
# -u = update
# --ignore-errors = continua copiando aunque haya errores I/O
# --delete-excluded = borra los ficheros de destino aunque estén en directorios de exclusión
# --force = elimina directorios en destino aunque tenga ficheros
# --exclude-from = indica fichero con PATTERNs de exclusión. Cualquier fichero/directorio que cumpla y sus subdirectorios son excluidos
# APP
export DISPLAY=:0.0 # Para el notify
NOW=$(date +"%d-%m-%Y")
i=$(date +"%Hh%Mm%Ss")
FILE="$NOW-$i.log"
notify-send -u normal --icon=gtk-refresh --category=transfer "Realizando copia de seguridad de HOME"
#tar -g /backup/backup_tar_home.txt -zcpf /backup/backup-home-$FILE /home/ --exclude-tag-under=.nobackup
rsync -au --ignore-errors --stats --delete --delete-excluded --force --exclude-from "exclude-rsync.txt" --log-file="$FILE" /home/ /backup/home
RETVAL=$?
if [ $RETVAL -ne 0 ]; then
notify-send -u critical --icon=gtk-dialog-error --category=transfer.error "Error al realizar el backup";
else
notify-send -u normal --icon=gtk-apply --category=transfer.complete "Backup completado con éxito";
fi
.gvfs
.cache
.thumbnails
*.nobackup
jdownloader
\[NB\]*