Backup com rsync em maquina da rede.
Publicado por Jack 31/08/2004
[ Hits: 11.397 ]
Homepage: www.icatorze.com.br
Antes de rodar o script, a maquina servidor, deve poder se conectar com a maquina cliente com SSH sem senha (há vários artigos sobre isso). O cliente e o servidor devem ter o rsync. O rsync vai copiar na primeira vez os arquivos do servidor para a maquina do backup, depois o rsync só atualiza o que foi modificado e apagado. Está rodando há uns 6 meses aqui na empresa.
#!/bin/sh # #sincr_backup.1.0 #Script que iniciara e enviara os pacotes para #backup na maquina remoto, definida agora como #backup ou 192.168.50.241 # #Configuracao do host remoto #ip da maquina que recebe os backups IP_BCKUP=192.168.50.241 #dispositivo (/dev/hd??) que recebe os backups DISP_BCKUP=/dev/hdb1 #ponto de montagem do dispositivo MNT_POINT=/mnt/discobackup/ ARQ_IDENT=.ident_dsk.txt # # #Checa se o host esta ligado /bin/ping -c 1 -W 2 $IP_BCKUP > /dev/null if [ "$?" -ne 0 ]; then #Escreve o arquivo de log em /var/log/sincr_backup.log #Escreve a data e a hora date >> /var/log/sincr_backup.log #Se a conexao nao retornar o pinga ele avisa. echo Conexao ao host $IP_BCKUP falhou!!! >> /var/log/sincr_backup.log echo Nao foi possivel realizar o backup. >> /var/log/sincr_backup.log echo ----------------------------------- >> /var/log/sincr_backup.log #O script termina aqui. else #Se retornar o ping ... #Escreve o arquivo de log em /var/log/sincr_backup.log #Escreve a data e a hora date >> /var/log/sincr_backup.log #Pega a estampa de tempo inicial, em segundos desde 1-1-1970 INI_TIME=`date +%s` #Avisa que o host esta funcionando echo O host $IP_BCKUP esta em pe!! >> /var/log/sincr_backup.log #Verifica se o disco de backup ja esta montado /usr/bin/ssh $IP_BCKUP /bin/mount | grep $DISP_BCKUP > /dev/null #monta o disco no ponto de montagem, se ja estiver montado, tudo bem if [ "$?" -ne 1 ]; then echo O disco ja esta montado!!! >> /var/log/sincr_backup.log else echo Montando o disco $DISP_BCKUP em $MNT_POINT >> /var/log/sincr_backup.log /usr/bin/ssh $IP_BCKUP mount /dev/hdb1 /mnt/discobackup fi #Depois de montados #le o arquivo com a identificacao do disco /usr/bin/ssh $IP_BCKUP /bin/cat $MNT_POINT$ARQ_IDENT >> /var/log/sincr_backup.log echo Sincronizando discos ..... >> /var/log/sincr_backup.log #Inicia a sincronizacao pelo rsync rsync -a --delete -e ssh /home root@$IP_BCKUP:/mnt/discobackup/ #Pega a estampa de tempo final FIN_TIME=`date +%s` #Calcula o tempo para realizar o backup TOT_TIME=`expr $FIN_TIME - $INI_TIME` echo Levou $TOT_TIME segundos para terminar o backup! >> /var/log/sincr_backup.log echo ----------------------------------- >> /var/log/sincr_backup.log fi
Compilação automática do kernel Linux-libre 3.14.16
Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
Gerar a linha do Depends prontinha para o "control" para gerar pacotes DEB
Script para conexão em horário determinado
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
O 1º artigo a gente nunca esquece (1)
Pastas da raiz foram para a área de trabalho [RESOLVIDO] (9)
Problema ao atualizar archlinux nvidia [RESOLVIDO] (3)