Ultimamente están saliendo muchas instalaciones de centralitas Asterisk con FreePBX, por esta razón he programado un sencillito script que se encarga de hacer un dump de la base de datos de configuración de FreePBX y la envÃa por FTP a un servidor externo.
Código:
#!/bin/sh
# Variables Locales
echo ‘creando variables’
BKPDIR=”/tmp/asterisk”
bbdduser=”xxxxx”
bbddpasswd=”xxxxxx”
log=/var/log/bkpasterisk/ftptransfer.log.$(date ‘+%Y-%m-%d’)
server=ftp.miservidor.tld
ftpuser=xxxxx
ftppasswd=xxxxxx
remote=/dir1/dir2
echo ‘movemos al directorio de backups’
cd $BKPDIR
echo ‘haciendo backup BBDD Asterisk’
mysqldump -uroot -p$bbddpasswd asterisk -C -c> $BKPDIR/asterisk.sql
echo ‘comprimimos el backup’
tar -zcvf asterisk_$(date +%d%m%y).tgz *.sql >> $log 2>&1
echo ‘borramos ficheros antiguos’
find -name *.tgz -type f -mtime +2 -exec rm -f {} \; >> $log 2>&1
echo ‘borramos los .sql’
rm *.sql
### Enviamos por FTP ###
ncftp -u”$ftpuser” -p”$ftppasswd” $server<
cd $remote
lcd /tmp/asterisk
mput *
quit
EOF
### comprobamos si la copia ha fallado ###
if [ "$?" == "0" ]; then
echo “Copia OK”
else
mail -s “Error Backup Asterisk” “correo@midominio.tld” <$log
rm -f $T
fi
