Backup de dados
Publicado por Breno Morato Mesquita Sabella 12/08/2009
[ Hits: 7.007 ]
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
Bloquear contas em servidor Zimbra após 45 dias
Algoritmo Fisher-Yates shuffle
Instalador e ativador da placa Real 3D Captura.
Usando variáveis em shell script
Nenhum comentário foi encontrado.
Maquina modesta - a vez dos navegadores ferrarem o usuario
Fscrypt: protegendo arquivos do seu usuário sem a lentidão padrão de criptograr o disco
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
Configurando o Cairo Dock individualmente em ambientes diferentes na mesma maquina
Calculadoras online gratuitas para o dia a dia do usuário Linux
Utilizando a Ferramenta xcheckrestart no Void Linux
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Governo da França vai trocar Windows por Linux (3)
Warsaw não é reconhecido no Google Chrome 147.0.7727.55 (2)
Epson L3250 só imprime se remove e conectar o cabo usb (1)
VMWare Player não conecta na rede nem consigo intercambiar arquivos (4)









