En cada sistema que administro tengo uno distinto, porque en realidad nunca acabo contento con el resultado.
Todo porque cuando una copia de seguridad hace falta, malo. Aun así lo importante es que no todo se pierda y que con los ficheros guardados a buen recaudo y la memoria del sistema volvamos a tenerlo todo OK en tiempo récord.
Para estas cosas, la memoria y documentar la configuración, lo mejor es un Wiki, pero aun así tendría que hacer backup de él :).
El backup.sh que estoy usando actualmente en este servidor:
#!/bin/sh BAK_DIR="/var/root" BAK_TMP="/tmp" WWW_DIR="/var/www" REMOTE_BAK="user@IP:REMOTE_BAK_DIR" # copiar ficheros conf echo "Copiando ficheros:" CP_FILES="/usr/share/sendmail/cf/mysendmail.mc /etc/pf.conf /etc/dhcpd.conf\ /var/www/conf/*.conf /etc/ddclient.conf /etc/dhclient.conf\ /etc/hostname.vr0 /etc/hostname.vr1 /etc/hostname.wi0\ /etc/rc.local /etc/rc.conf.local /etc/squid/squid.conf\ /etc/stunnel/stunnel.conf /etc/ssl/private/stunnel.pem\ /var/named/etc/named.conf /etc/rndc.conf /etc/rndc.key /root/bin/*\ /root/etc/* /etc/crontab /etc/mail/access /etc/mail/local-host-names\ /etc/mail/aliases /etc/fetchmailrc /usr/patches/* /etc/bogom.conf\ /var/spool/bogofilter/Makefile /var/spool/bogofilter/wordlist.db" for cp_file in $CP_FILES; do cp_subdir="$BAK_DIR/$(echo $cp_file | \ awk -F/ '{ print $(NF-2) "_" $(NF-1) }' -)" if [ ! -d $cp_subdir ]; then echo " creando $cp_subdir..." mkdir $cp_subdir fi if [ -f $cp_file ]; then echo " $cp_file" cp -f $cp_file $cp_subdir fi done # bases de datos echo "Volcando DB:" DB="blackshell" for db in $DB; do echo " $db" mysqldump -u dbuser -h localhost --password=dbpasswd\ $db > $BAK_DIR/$db-dump.sql done # web echo "Empaquetando www:" TAR_WEB="htdocs htdocs-works" for tar_file in $TAR_WEB; do echo " $tar_file" cd $WWW_DIR && tar cf $BAK_DIR/$tar_file.tar $tar_file/ done # comprimirlo todo echo "Comprimiendo..." DATE=$(date +%A) cd $BAK_DIR && tar cfz $BAK_TMP/backup_$DATE.tar.gz . # enviarlo echo "Enviando..." scp $BAK_TMP/backup_$DATE.tar.gz $REMOTE_BAK # lipiar echo "Limpiando..." rm -r $BAK_DIR/* && rm $BAK_TMP/backup_$DATE.tar.gz\ && echo OK # EOF
No es genial y requiere de una sesión shell interactiva (me pide la contraseña para el scp), pero me vale por ahora.
Actualizado 2005-06-19

![[xml]](/images/xml.gif)
