Backup incremental com rsync

1. Backup incremental com rsync

natha
ncampos

(usa Debian)

Enviado em 01/10/2015 - 13:51h

Boa tarde,
minha necessidade atual é backup de forma incremental de um servidor, (tudo que esta no /home) e backupear em uma unidade mapeada no /mnt com exceção de uma certa pasta.
abaixo meu scrip que estou utilizando,porem o backup nao esta sendo feito,e nao gera log.
Outra duvida,como posso fazer uma "saida" do log mais organizada? pois meu atual esta muito confuso.


exemplo script:

#!/bin/bash

INICIO=`date +%d/%m/%Y-%H:%M:%S`
LOG=/home/informacoes/`date +%Y-%m-%d`_log_de_copia.txt

echo " " >> $LOG
echo " " >> $LOG
echo "| ------ ------ ------ ------ ------ ------ -----------" >> $LOG
echo " Sincronizacao iniciada em $INICIO" >> $LOG


rsync -av --exclude 'backup-captare-diario' /home/ /mnt/copia_linux_dados/ >> $LOG
FINAL=`date +%d/%m/%Y-%H%:M:%S`


echo " Sincronizacao Finalizada em $FINAL" >> $LOG
echo "| ------ ------ ------ ------ ------ ------ -----------" >> $LOG
echo " " >> $LOG
echo " " >> $LOG



  


2. Re: Backup incremental com rsync

Guilherme Isaac
guilhermisaac

(usa Arch Linux)

Enviado em 07/10/2015 - 14:56h


Cara, esse teu script ta funcionando legal.
Agora tu tem que ver com qual usuário tu tá executando esse script, dependendo do usuário, pode ser que vc não tenha permissão para fazer copia de outras pastas localizadas no /home
Enfim,
Dependendo de como vc quer tbm, poderia acrescentar a opção -r(recursiva) e -u(update, ele copia somente o que foi modificado) e tem varias outras opções que variam. gosto de dizer que não existe uma forma no linux, vc molda ele de acordo com o seu gosto. Mas dá uma sacada no man do rsync. ;)
Outra coisa no seu script que mudaria é a localização do arquivo de log, primeiro vc joga a saida pra o arquivo, depois o rsync vai copiar o arquivo de log antes de vc redirecionar a parte final do seu script.



3. Re: Backup incremental com rsync

João Paulo de Vasconcelos Resende
jpvr2005

(usa Debian)

Enviado em 07/10/2015 - 15:09h

Boa tarde amigo,
Meu script de backup que tenho aqui, utilizo o rsync da seguinte forma:
rsync -Crazvpt /diretorio/original/Arquivos /mnt/backup_files_destino/

Para gerar os logs, após declarar o #!/bin/bash abra um ( e coloque seu script lá dentro. No final quando for fechar o parentese, faça da seguinte forma:
) > /var/log/backup/arquivo_de_log.log

Quando gerar seu log, você deve conseguir identificar o porque seu backup não é realizado.

Att.
João Paulo


4. Re: Backup incremental com rsync

natha
ncampos

(usa Debian)

Enviado em 08/10/2015 - 15:25h

guilhermisaac escreveu:


Cara, esse teu script ta funcionando legal.
Agora tu tem que ver com qual usuário tu tá executando esse script, dependendo do usuário, pode ser que vc não tenha permissão para fazer copia de outras pastas localizadas no /home
Enfim,
Dependendo de como vc quer tbm, poderia acrescentar a opção -r(recursiva) e -u(update, ele copia somente o que foi modificado) e tem varias outras opções que variam. gosto de dizer que não existe uma forma no linux, vc molda ele de acordo com o seu gosto. Mas dá uma sacada no man do rsync. ;)
Outra coisa no seu script que mudaria é a localização do arquivo de log, primeiro vc joga a saida pra o arquivo, depois o rsync vai copiar o arquivo de log antes de vc redirecionar a parte final do seu script.


Show de bola,fiz os ajustes e complementei com a opção -u que tambem me atende.porem na questao dos Log's acredito que errei em alguma coisa, minha necessidade é que mostre (hora,minuto) que iniciou e finalizou e em caso de erro qual pasta que deu erro.
Fiz o juste do log tambem que voce deu a dica,porem agora ele gera 2 arquivos de log.
1 contendo como estava antes ( sem organizacao) e outro apenas com hora e data sendo que data final nao mostra os minutos.

SEGUE SCRIPT ATUALIZADO:
#!/bin/bash
( rsync -avu --exclude 'backup-captare-diario' /home/* /mnt/copia_linux_dados/
) > /home/rafael/`date +%y-%m-%d`_log_de_copia.log

INICIO=`date +%d/%m/%Y-%H:%M:%S`
LOG=/home/rafael/`date +%Y-%m-%d`_log_de_copia.txt


echo "| ---- " >> $LOG
echo " Sincronizacao de backup's servidor Linux dados iniciada em $INICIO" >> $LOG


>> $LOG
FINAL=`date +%d/%m/%Y-%H%:M:%S`

echo " Sincronizacao de backup's servidor Linux dados finalizada em $FINAL" >> $LOG
echo "| ------ " >> $LOG







5. Re: Backup incremental com rsync

João Paulo de Vasconcelos Resende
jpvr2005

(usa Debian)

Enviado em 08/10/2015 - 16:03h

Boa tarde amigo,
Na saída para log, tenta colocar as variáveis de Horas e Minutos (%H e %M) pra ver se dentro do arquivo gera as horas.

Att.
João Paulo






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts