Backup de dados
Publicado por Breno Morato Mesquita Sabella 12/08/2009
[ Hits: 6.877 ]
Homepage: http://bsabella.com.br
Este script monta um backup incremental de segunda à sexta, e aos sábados gera um backup full. Salva os passos da compactação em LOG e calcula a média do tempo gasto para executar o processo.
#!/bin/bash
# Dados para compactação e trasnferência de arquivos
DIR_ORIG=/data
DIR_DEST=/data/
CONECTA=usuario@ip_do_servidor:/data/backup/fileserver
LOG=/data/backup/backup.log
DIA=`date +%u`
echo "Inicio...: `date +%d%m%Y_%H%M`" >> ${LOG}
HI=`date +%H`
MI=`date +%M`
# Compactação dos dados
echo "Compactando Dados de Origem" >> ${LOG}
if [ ${DIA} -lt 6 ]; then
BKP_NAME=bkp_diario.tgz
RESULTA=${DIR_DEST}${BKP_NAME}
find ${DIR_ORIG} -mtime 0 -type f -print | tar -czpf ${RESULTA} ${DIR_ORIG}
echo "Tipo.....: DIARIO" >> ${LOG}
else
BKP_NAME=bkp_semanal.tgz
RESULTA=${DIR_DEST}${BKP_NAME}
tar -czpf ${RESULTA} ${DIR_ORIG}
echo "Tipo.....: SEMANAL" >> ${LOG}
fi
# Transferindo backup para o servidor
echo "Transferindo Arquivo de Backup" >> ${LOG}
scp -rp ${RESULTA} ${CONECTA}
# Excluí Arquivo TAR
echo "Excluíndo Arquivo Temporário" >> ${LOG}
# rm -Rf ${DIR_DEST}${BKP_NAME}
rm -Rf ${RESULTA}
echo "Fim......: `date +%d%m%Y_%H%M`" >> ${LOG}
#Calcula Média do tempo de processo
HF=`date +%H`
MF=`date +%M`
if [ ${HI} -gt ${HF} ]; then
HM=$((24 - (${HI} - ${HF})))
else
HM=$((${HF} - ${HI}))
fi
if [ ${MI} -gt ${MF} ]; then
MM=$((60 - (${MI} - ${MF})))
else
MM=$((${MF} - ${MI}))
fi
echo "Média....: "${HM}" horas "${MM}" minutos " >> ${LOG}
echo " " >> ${LOG}
# Transfere Log
scp -r ${LOG} ${CONECTA}
exit 0
Desligamento da máquina caso o servidor venha a sair do ar.
Bomba.sh - Estouro de memória RAM com Menu
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
O programa assinador digital (0)
dpkg: erro: gatilho de arquivo duplicado chamado pelo arquivo de nome (6)
Instalação não está resolvendo as dependencias (2)
Captação de áudio no zorin linux começa a diminuir com o tempo (5)









