El backup.sh de blackshell
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
Hay 4 comentarios
Sé que se puede hacer el tema de ssh automático con ssh-keygen (lo hacía con la movida del NFS), pero aun no me he puesto :P
Por cierto, el TB de wordpress está roto (creo). Échale un ojo a:
http://zootropo.f2o.org/archivos/2004/08/15/trackback/
donde creo que explican el problemilla que tiene WP al enviar los trackbacks.
Como comenta Juanjo, es posible automatizar la autenticación con ssh. Echale un vistzo a esto:
http://www.clubdelphi.com/users/saiyine/trucoslinux.php#clavespublicasssh
por Goatse, en 2004-12-12 04:00:58 ∞
Los comentarios están cerrados: los comentarios se cierran automáticamente una vez pasados 30 días. Si quieres comentar algo acerca de la anotación, puedes hacerlo por e-mail.
por josefu, en 2004-12-10 00:05:20 ∞