En esta ocasión montaremos un script que nos permite guardar comprimido los datos fundamentales de la Raspberry Pi
Para ello crearemos el siguiente scrpit
###################################################################################### #!/bin/bash #Local FICHERO=backup_`hostname`_`date +%d%m%y`.tar.gz # Un log, porque la vida sin logs no es nada RUTA_LOG="/home/antonio/scripts/log_backup.txt" echo "#################################################################" >> $RUTA_LOG echo "INICIO DEL BACKUP DATOS DEL SISTEMA" >> $RUTA_LOG echo "#################################################################" >> $RUTA_LOG echo `uptime` | sed -e 's/^[ \t]*//' >> $RUTA_LOG echo "#################################################################" >> $RUTA_LOG echo `date +"%T"` "comenzando backup sistema ..." >> $RUTA_LOG sudo iw wlan0 set power_save off sleep 1 sudo mount -av sleep 1 #Borrado de los ficheros anteriores a seis meses sudo find /mnt/copias/* -mtime +180 -exec rm {} \; #Creamos el directorio temporal de copias rm -rf /home/antonio/backup_tmp mkdir /home/antonio/backup_tmp #Backup base de datos si las hubiera mysqldump --all-databases > /home/antonio/backup_tmp/mysql.sql #copia de los datos importantes al directorio temporal echo `date +"%T"` "copia de la los datos ..." >> $RUTA_LOG dpkg --get-selections > /home/antonio/backup_tmp/Package.list sudo cp -R /etc/apt/sources.list* /home/antonio/backup_tmp/ sudo cp -R /var/spool/cron/* /home/antonio/backup_tmp/ sudo apt-key exportall > /home/antonio/backup_tmp/Repo.keys sudo cp -R /var/spool/cron/* /home/antonio/backup_tmp/cron/ #comprimir directorio echo `date +"%T"` "comprimir los datos ..." >> $RUTA_LOG tar -czf /home/antonio/backup_tmp/$FICHERO /home /etc /usr/local/etc /home/antonio/backup_tmp #Subida de los datos echo `date +"%T"` "Subida de la copia al NAS ..." >> $RUTA_LOG cp /home/antonio/backup_tmp/$FICHERO /mnt/copias/ #Borrado del directorio tempotal rm -rf /home/antonio/backup_tmp echo "#################################################################" >> $RUTA_LOG echo `date +"%T"` "FIN DEL BACKUP" >> $RUTA_LOG echo "#################################################################" >> $RUTA_LOG ######################################################################################
En menos de 15 minutos tendremos a buen recaudo una copia de todos nuestros datos
################################################################# INICIO DEL BACKUP DATOS DEL SISTEMA ################################################################# 11:32:49 up 6:32, 2 users, load average: 1,80, 1,95, 1,87 ################################################################# 11:32:49 comenzando backup sistema ... 11:35:13 copia de la los datos ... 11:35:15 comprimir los datos ... 11:38:06 Subida de la copia al NAS ... ################################################################# 11:46:38 FIN DEL BACKUP #################################################################
Solo falta ponerlo como tarea en cron y a funcionar
#Copia del sistema semanal 0 10 * * sat /bin/sh /home/antonio/scripts/sbackup.sh
Y esto es todo ……..