Crea TARs de varios directorios del sistema, para realizar un backup «completo»
/etc
/home
#!/bin/bash -x # mejoras a realizar: # - comprobar la existencia del directorio destino con [ -d ]; # - utilizar /etc/mysql/debian.cnf para el usuario/password de mysql # ubicaciones path_backup=/root/bck path_correo=/home/vmail/ path_mysql_trans=/var/log/mysql/ # backup buzones correo cd $path_correo # el find con * está limitado a 1024 dominios!! # for buzon in `find * -maxdepth 1 -iname *@*` for buzon in `find -maxdepth 2 -iname *@* | sed "s:\.::" ` do tar zcpf $path_backup/mail/`echo "$buzon"| sed "s:.*/::"`.tar.gz $path_correo$buzon done # backup BBDD mysql for db in `mysql -u root -ptoor -e "show databases;" | grep -v ^Database$` do # mysqldump -u root -ptoor $db > $path_backup/$db.sql mysqldump -u root -ptoor $db | gzip -fc > $path_backup/$db.sql.gz done tar zcf $path_backup/mysql.logs.tar.gz $path_mysql_trans # backup /etc tar zcpf $path_backup/etc.tar.gz /etc/* # backup /home (no el vmail) for homes in `find /home/* -maxdepth 0 | grep -v ^$path_correo*` do tar zcpf $path_backup/home/`echo "$homes"|sed "s:.*/::"`.tar.gz $homes done