====== Respaldando por e-mail ======
Requiere un servidor de correo local que pueda enviar correo a la cuenta de destino en forma normal.
apt-get install biabam sharutils file
Description-en: bash attachment mailer
A tool that is used for mailing attachments from the commandline.
It is similar to using Mutt to send attachments on the commandline,
but without the overhead of a complete email client.
http://mmj.dk/biabam/
===== Script de respaldo =====
En caso de ser pocos los archivos a respaldar se puede usar una variable en lugar de un archivo externo. Las lineas a cambiar serían:
RESPALDAR=( /etc/resolv.conf /etc/ppp /etc/default /etc/network/interfaces )
cp -r --preserve --parents ${RESPALDAR[@]:0} $DIRDEST
Script para respaldo de muchos archivos
#!/bin/bash
#
# respaldo y envio por e-mail
# En mismo directorio respaldar.txt para lista archivos, uno por linea
if [ -h $0 ]; then
RESPARCHIVO=`dirname $(readlink $0)`/respaldar.txt;
else
RESPARCHIVO=`dirname $0`/respaldar.txt;
fi
if [ ! -f $RESPARCHIVO ]; then
echo "Archivo $RESPARCHIVO no encontrado" | /usr/bin/mail -s "$HOSTNAME Error" $TO; exit 1
fi
TO="rootway@email-gmail.com"
DATE=$(date +%Y%m%d-%H%M)
DIRTMP=$RANDOM
DIRDEST=/tmp/$DIRTMP/$HOSTNAME-$DATE
mkdir -p $DIRDEST
dpkg --get-selections > $DIRDEST/dpkg-selections
for RESPALDAR in $(cat $RESPARCHIVO); do
cp -r --preserve --parents $RESPALDAR $DIRDEST
done
cd $DIRDEST
tar czf /tmp/$DIRTMP/$HOSTNAME-$DATE.tgz .
if [ -x /usr/bin/biabam ]; then
echo "Adjunto archivo respaldo $HOSTNAME de fecha $DATE" | /usr/bin/biabam /tmp/$DIRTMP/$HOSTNAME-$DATE.tgz \
-s "RESPALDO $HOSTNAME del $DATE" $TO
else
echo "No existe el utilitario biabam, instale el paquete" | /usr/bin/mail -s "$HOSTNAME Error" $TO
fi
rm -R /tmp/$DIRTMP
exit 0
En caso de que el archivo creado supere los 8M es posible que el correo generado quede demasiado grande para ser enviado. En esos casos hay que usar multiples volúmenes y varios archivos, con ''rar'' ó ''tar -M''
===== respaldar.txt =====
En el mismo directorio un archivo con el listado de archivos o carpetas a respaldar:
/etc/resolv.conf
/etc/ppp
/etc/default
/etc/network/interfaces
===== Correr con cron =====
Colocar en ''/etc/cron.daily'' con el comando:
ln -s /usr/local/sbin/respaldar.sh /etc/cron.daily/respaldar
===== Mantenimiento cuenta GMail =====
http://www.labnol.org/internet/gmail-auto-purge/
===== Archivos que gmail no acepta =====
for i in .ade .adp .bat .chm .cmd .com .cpl .exe .hta .ins .isp .jse .lib .mde .msc .msp .mst .pif .scr .sct .shb .sys .vb .vbe .vbs .vxd .wsc .wsf .wsh; do find /etc -name "*$i"; done