[Musix-Help] ¿existe algún sistema de backups automático sobre archivos de configuración?
Marcos Guglielmetti
marcospcmusica en yahoo.com.ar
Sab Dic 31 01:51:35 CET 2005
Modifiqué un tanto el script, sorteando los errores que me daba en
Musix, ahora funciona y bastante bien, muy práctico de verdad
#!/bin/bash
# por Iván Belmonte <ivan en ivanhq.net>
# modificado un poco por Marcos Guglielmetti para Musix GNU+Linux
# (no funciona el sistema de log de errores)
DATE=`/bin/date +%F`
TMPDIRPARENT="/tmp/backup"
TMPDIR="/tmp/backup/$DATE"
BACKUPDIR="/var/spool/backup"
ERRORLOG="/tmp/backuperrors-$DATE.log"
# Especificar aqui el numero de dias de retencion
# que debe tener el backup
RETENTION="7"
# Añadir aqui los ficheros o directorios de los que
# se quiere hacer copia.
# Añadir cada entrada en una linea separada puede
# ayudarte a reconocer a simple vista las rutas.
ORIG="\
/etc/X11/XF86Config-4 \
/etc/resolv.conf \
$HOME/.icewm/* \
$HOME/.choice/* \
/etc/network/interfaces"
# se borra el fichro de log por si ya hubiera uno
# que se llame igual
rm $ERRORLOG 2>/dev/null
# se crean los directorios porque teoricamente algunos
# no estan creados todavia
if `! test -d $BACKUPDIR`
then
#mkdir $BACKUPDIR 2>>$ERRORLOG
mkdir $BACKUPDIR
fi
#mkdir -p $TMPDIRPARENT 2>>$ERRORLOG
#mkdir -p $TMPDIR 2>>$ERRORLOG
mkdir -p $TMPDIRPARENT
mkdir -p $TMPDIR
# se copian los datos sensibles al directorio
# temporal de backup
for DIR in $ORIG
do
#cp -Rp $DIR $TMPDIR/ 2>>$ERRORLOG
cp -Rp $DIR $TMPDIR/
done
# comprimimos el backup y lo ponemos en su sitio
cd $TMPDIRPARENT
#tar zcvf $DATE.tar.gz $DATE/ 2>>$ERRORLOG
#mv $DATE.tar.gz $BACKUPDIR 2>>$ERRORLOG
tar zcvf $DATE.tar.gz $DATE/
mv $DATE.tar.gz $BACKUPDIR
# ahora controlamos la retencion del backup
cd $BACKUPDIR
BCKCOUNT=`ls *.tar.gz | wc -w`
if `test $BCKCOUNT -gt $RETENTION`
#if `test $BCKCOUNT -gt $RETENTION 2>> $ERRORLOG`
then
TRASHFILE=`ls *.tar.gz | head -n 1`
#TRASHFILE=`ls *.tar.gz | head -n 1 2>> $ERRORLOG`
rm $TRASHFILE
#rm $TRASHFILE 2>>$ERRORLOG
fi
# borramos los directorios temporales
rm -rf $TMPDIR
# si no ha habido errores damos un OK, de lo contrario
# cantamos error.
#if `test -s $ERRORLOG`
#then
# OUTPUT="*** ERROR: see $ERRORLOG for details."
#else
#fi
# mensaje de salida
echo " "
echo " Backup successfully archived."
echo " "
___________________________________________________________
1GB gratis, Antivirus y Antispam
Correo Yahoo!, el mejor correo web del mundo
http://correo.yahoo.com.ar
Más información sobre la lista de distribución Musix-Help