Kit de scripts para backup (Full + Diferencial + Samba + Rede)
Esse kit de scripts foi desenvolvido para realizar backup full e diferencial, via rede. Está operacional e em constante modificação. Ajuste conforme a sua necessidade. Para criar um servidor Samba, utilize os ótimos artigos encontrados no VOL.
[ Hits: 51.507 ]
Por: Perfil removido em 12/11/2011
#!/bin/bash # Maicon Souza # data: 22-09-11 echo "Programa de Backup Diferencial" IFS=: # separadores lendoidbackup(){ # Importante::::: se houver mais de uma ID, altere os trechos "${nomebackup[0]}", para "${nomebackup[$cont]}" # nome do backup nomebackup=(" ") cont=0 while read linha; do nomebackup[$cont]=$linha let cont++ done < ./config/id_backup.txt } cbackup(){ # chama e roda o script de compactacao de backup chmod +x ./compactar_backup.sh ./compactar_backup.sh } montaunids(){ # chama e roda o script para montar as unidades chmod +x ./montar_unidades.sh ./montar_unidades.sh } echo " " recebeinfbackup(){ # origem dos dados receborig=(" ") cont=0 while read linha; do receborig[$cont]=/media/bkporig-${nomebackup[0]}-$cont let cont++ done < ./config/lista_orig_backup.log } dadosdif() { # diretorio de destino do backup DSTDIR=/media/bkpdest/${nomebackup[0]} DATA=`date +%x-%k%M%S` # +xx busca arquivos criados existentes a xx minutos (arquivos que tenham mais de xx minutos) # -xx arquivos que tenham sido criados nos ultimos xx minutos TIME_FIND=-400 # horas = 400 minutos TIME_DEL=+7 # dias em que permanecera o backup diferencial armazenado # data de inicio backup DATAIN=`date +%c` echo " Data de inicio: $DATAIN" # criar o arquivo dif-data.tar no diretorio de destino ARQ=(" ") cont2=0 while read linha; do ARQ[$cont2]=$DSTDIR/dif-$cont2-$DATA.tar let cont2++ done < ./config/lista_orig_backup.log } backupdif(){ cont3=0 while read linha; do sync find ${receborig[$cont3]} -type f -cmin $TIME_FIND -exec tar -rvf ${ARQ[$cont3]} {} ";" let cont3++ done < ./config/lista_orig_backup.log if [ $? -eq 0 ] ; then echo "--------------------------------------" echo "Backup Diferencial concluido com sucesso" DATAFIN=`date +%c` echo "Data de termino: $DATAFIN" echo "Backup realizado com sucesso" >> ./log/backup_diferencial.log echo "Criado pelo usuario: $USER" >> ./log/backup_diferencial.log echo "INICIO: $DATAIN" >> ./log/backup_diferencial.log echo "FIM: $DATAFIN" >> ./log/backup_diferencial.log echo "------------------------------------------------" >> ./log/backup_diferencial.log echo " " echo "Log gerado em ./log/backup_diferencial.log" else echo "ERRO! Backup Diferencial $DATAIN" >> ./log/backup_diferencial.log fi } procuraedestroidif(){ #apagando arquivos mais antigos (a 7 dias que existe (-cmin +2) find $DSTDIR -name "dif*" -ctime $TIME_DEL -exec rm -f {} ";" if [ $? -eq 0 ] ; then echo "Arquivo de backup mais antigo eliminado com sucesso!" else echo "Erro durante a busca e destruicao do backup antigo!" fi } #################### echo " " clear echo " " echo "<----------------------->" echo "| BACKUP DIFERENCIAL |" echo "<----------------------->" echo " " echo " " echo " " echo " " echo "<--------------------------------------------------------------------------->" echo "| Sera realizado o backup diferencial, usando como base o ultimo backup ! |" echo "<--------------------------------------------------------------------------->" lendoidbackup montaunids recebeinfbackup dadosdif backupdif cbackup procuraedestroidif exit 0
Grub animado no Ubuntu? BURG nele!
Instalação e uso do Superkaramba
VPN com openVPN no Slackware 11
Instalando o OSS4 no Ubuntu 11.04
Aprendendo a melhorar os seus scripts
Ingressando estações de trabalho Ubuntu no AD com Closed In Directory
Script de firewall completíssimo
Assinatura de documentos PDF em lote via Bash
pam_mount e CiD - Gerenciamento centralizado dos mapeamentos de unidades de rede no Ubuntu
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Instalação Uefi com o instalador clássico do Mageia (1)
Vou voltar moderar conteúdos de Dicas e Artigos (0)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta