Backup de dados
Publicado por Breno Morato Mesquita Sabella 12/08/2009
[ Hits: 6.952 ]
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
Bomba.sh - Estouro de memória RAM com Menu
Criar lançadores de aplicativos no Unity
Faciliando copiar DVD com 2 gravadoras pelo terminal
Script para criação de usuários do Samba
Nenhum comentário foi encontrado.
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Instalando COSMIC no Linux Mint
Turbinando o Linux Mint: o poder das Nemo Actions
Inteligência Artificial no desenvolvimento de software: quando começar a usar?
O widget do Plasma 6 Área de Notificação
[Resolvido] Algo deu errado ao abrir seu perfil
Instalar Dual Boot, Linux+Windows. (12)
Problemas com o "startx&... no Slackware (10)
Conselho distribuiçao brasileira (8)
Atalho no Linux Mint não aparece menu de troca de monitores (0)









