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: 52.705 ]
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
XL - Ferramenta de gerenciamento Xen - Parte II
Repensando o PID 1 - Lennart Poettering
Como escolher o melhor escalonador de CPU para melhorar o desempenho da máquina
GNU/Linux - Benefícios na Área Administrativa
getopts: criando scripts Bash com parâmetros e argumentos personalizáveis
Relatório de sistema via browser (shell script + CGI)
Monitoramento de pops para provedores
Blacklist - O que é? Como consultar o IP? Como automatizar?
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)









