Backup com rsync em maquina da rede.
Publicado por Jack 31/08/2004
[ Hits: 11.322 ]
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
Identificar arquivos criados ou removidos no sistema.
Automatizar a criação de domínios, sites e usuários de FTP
Copia um DVD de um Game para o HDD do Play2 via rede
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Meus HDs não aparecem mais no boot da placa mãe (2)
Abrir arquivos em lotes no terminal usando o LibreOffice (0)
Meu sistema operacional linux Ubuntu nao abre (8)
Não compila (ou roda) os exemplos (6)
Alguém ja usou o package manager gnu guix em outros sistemas operacion... (0)