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.123 ]
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
Usando o gerenciador de arquivos XFE para administrar as tarefas no Linux
PuTTY - Release 0.66 - Parte IV
Arquivos de configuração de rede - Parte I - /etc/hosts
Procedimento para descoberta de chave WEP
Usando Docker para encapsular qualquer aplicação no GNU/Linux
Blacklist - O que é? Como consultar o IP? Como automatizar?
Redundância de link de internet
cal2svg - brincando com shell script e arquivos vetoriais SVG
Desligar servidores quando o nobreak entra na bateria e envio de aviso por e-mail
Assinatura de documentos PDF em lote via Bash
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Aplicativo simples para gravar tela
Quebra de linha na data e hora no Linux Mint
Firefox não abre em usuário não administradores (0)
Sempre que vou baixar algum pacote acontece o erro dpkg (8)
tentando instalar em um notebook antigo o Linux LegacyOS_2023... [RESO... (8)
Problema com Conexão Outlook via Firewall (OpenSUSE) com Internet Fibr... (5)