Script de backup e envio via SSH
Publicado por Rodrigo Rezende 07/08/2009
[ Hits: 10.765 ]
Homepage: http://www.rrezende.com.br
Script para adicionar ao cron e fazer backup regularmente dos diretórios e arquivos selecionados.
Compacta e envia via scp na porta 8022 para o host responsável por armazenamento. É necessário que sejam adicionados certificados para cópia sem erros.
Em caso de falha envia e-mail para o responsável pelo backup (configure no código).
#!/bin/bash
IFACES=/etc/network/interfaces
RESOLV=/etc/resolv.conf
FILESHADOW=/etc/shadow
FILEPASS=/etc/passwd
DIRINT=/var/www/interno
DIREXT=/var/www/externo
DIRAPACHE=/etc/apache
DIRMYSQL=/var/lib/mysql
DIRBACKUP=/root
DIROPEN=/var/www/webmail
MSGBODY=/home/topogigo/tels.txt
DATABACKUP=`date -I`
USER=topogigo
ID=/home/topogigo/.ssh/id_dsa
HOSTDEST=XXX.XXX.XXX.XXX
DIRDEST=/home/topogigo/backup
MAILCMD=`which mutt`
MAILADDRESS=responsavel@dominio.com.br
if [ -d ${DIRMAIL} ] && [ -d ${DIRBACKUP} ]; then
cd ${DIRBACKUP}
tar cvzf backup-${DATABACKUP}.tar.gz $IFACES $RESOLV $FILESHADOW $FILEPASS $DIRINT $DIREXT $DIRAPACHE $DIRMYSQL
if [ $? == 0 ]; then
echo "Feito." > ${MSGBODY}
scp -P 8022 -i ${ID} ${DIRBACKUP}/backup-${DATABACKUP}.tar.gz ${USER}@${HOSTDEST}:${DIRDEST}
rm ${DIRBACKUP}/backup-${DATABACKUP}.tar.gz
else
echo "Falha no backup. :(" > ${MSGBODY}
${MAILCMD} -s "Backup FALHOU" ${MAILADDRESS} < ${MSGBODY}
fi
fi
beepop - popups com o texto digitado
Minha solução para monitorar múltiplos termômetros no Slackware
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
O Editor de Texto Nano: Simplicidade no Terminal
SynapSeq - programa para estimular as ondas cerebrais
Por que seu __DIR__ falhou ou o "inferno" dos caminhos no PHP
[Resolvido] Meu monitor suporta 100fps. Por que o máximo é 60fps nos jogos?
Jogando "Magic" gratuitamente no Linux
Zoxide e fzf no bash para incrementar o uso do Terminal
[pedido] biglinux versao 1 (0)
A falsa sensação de que entende a tal da palavra! (1)
Eu aprendi o segredo das artes! hahaha (5)









