huahuahuahu mat0 essa pra vc em 2 toques Espelho e Backup automático com RSync e NFS
Desenvolvi uma rotina de backup com rsync pra você fazer um espelho do servidor e manter os arquivos excluidos em um diretório ou partição separada é realmente muito simples. Você pode por o servidor de backup em produção mantendo 1 dia de atrazo ou menos e ainda ter um bkp diário do que foi excluido o comando é esse : /usr/local/bin/rsync -a --delete-during --backup --backup-dir=/backup/2006-08-15/user/ --compress --verbose --human-readable --stats /srv1/user/ /srv2/user Explicando: * o –delete-during ele apaga no destino o que já foi excluido na origem durante a sincronização. * o –backup –backup-dir=/backup/2006-08-15/user/ irá efetuar o backup e definirá onde ele deve guardar os arquivos excluidos antes dele serem apagados no destino ( ou atualizados, nao veirifiquei isso ainda ), eu fiz um script em sh para pegar a data atual dai você agenda no cron e corre pra cama dormir sussegado. configuração: srv 1 * 1 hd pro OS * 1 hd scsi para os dados correto ? Instala o rsync cria um compartilhamento NFS na partição de dados no serv 1 que só pode ser montado pelo serv 2 srv 2 * 1 hd pro OS * 1 hd pros dados como espelho1) mas em stand by para algum pau. você só precisa mudar o ip e subir o samba que deve ser configurado também como um espelho do teu srv 1 de produção e ai você desliga o srv 1 para reparo . =o) * 4 hd´s SATA2) para ser os BKP sem graid3 ( que é a versão GEOM do RAID3 por software ). pra podermos utilizar melhor todo espaço e fazer uma rotação simples nos hd´s para mais segurança contra falhas do próprio hd. Usando o cron você monta esse compartilhamento e executa o rsync normalmente puxando do srv 1 os arquivos para o srv 2 atualizando o HD de mirror e já fazendo backup para os hd´s SATA, dai vem de você rotacionar os discos conforme você achar melhor /backup/ /backup/semana 1 ( hd 1 ) /backup/semana 2 ( hd 2 ) /backup/semana 3 ( hd 3 ) /backup/semana 4 ( hd 4 ) O sh irá verificar se existe 1 arquivo ( IF { exist } ) de TAG para fazer rotação entre os hd´s esse arquivo é apagado e gerado no final de cada execução do backup com o touch /backup/TAG1 - TAG2 - TAG3 - TAG4 . #!/bin/sh ### # BSSN # Script de espelhamento em 1 hd para fail over e backup diferencial por data em 4 hd´s para bkp alternado. # v2.000 bio060815 ### DATA1=`/bin/date +%Y-%m-%d` DIRETORIO1=/backup/semana1/$DATA1 DIRETORIO2=/backup/semana2/$DATA1 DIRETORIO3=/backup/semana3/$DATA1 DIRETORIO4=/backup/semana4/$DATA1 # ARQUIVO=/squid/logbkp/squid.logs.$DATA1.tgz echo "Checando TAG..." if [ -f /backup/TAG1 ] then echo "Montando particao remota no servidor de backup" /sbin/mount -t nfs 192.168.1.247:/SCSI /mnt # mnt é o hd scsi do serv1 montado via nfs mkdir $DIRETORIO1 cd /mirror echo " efetuando backup em" + $DIRETORIO1 /usr/local/bin/rsync -a --delete-during --backup --backup-dir=$DIRETORIO1/user --compress --verbose --human-readable --stats /mnt/ /mirror # mirror é o hd de espelho do SCSI que ficará em stand by /bin/rm /backup/TAG1 /usr/bin/touch /backup/TAG2 echo echo "...done." elif [ -f /backup/TAG2 ] then echo "Montando particao remota no servidor de backup" /sbin/mount -t nfs 192.168.1.247:/SCSI /mnt # mnt é o hd scsi do serv1 montado via nfs mkdir $DIRETORIO2 cd /mirror echo " efetuando backup em" + $DIRETORIO2 /usr/local/bin/rsync -a --delete-during --backup --backup-dir=$DIRETORIO2/user --compress --verbose --human-readable --stats /mnt/ /mirror # mirror é o hd de espelho do SCSI que ficará em stand by /bin/rm /backup/TAG2 /usr/bin/touch /backup/TAG3 echo echo "...done." elif [ -f /backup/TAG3 ] then echo "Montando particao remota no servidor de backup" /sbin/mount -t nfs 192.168.1.247:/SCSI /mnt # mnt é o hd scsi do serv1 montado via nfs mkdir $DIRETORIO3 cd /mirror echo " efetuando backup em" + $DIRETORIO3 /usr/local/bin/rsync -a --delete-during --backup --backup-dir=$DIRETORIO3/user --compress --verbose --human-readable --stats /mnt/ /mirror # mirror é o hd de espelho do SCSI que ficará em stand by /bin/rm /backup/TAG3 /usr/bin/touch /backup/TAG4 echo echo "...done." elif [ -f /backup/TAG4 ] then echo "Montando particao remota no servidor de backup" /sbin/mount -t nfs 192.168.1.247:/SCSI /mnt # mnt é o hd scsi do serv1 montado via nfs mkdir $DIRETORIO4 cd /mirror echo " efetuando backup em" + $DIRETORIO4 /usr/local/bin/rsync -a --delete-during --backup --backup-dir=$DIRETORIO4/user --compress --verbose --human-readable --stats /mnt/ /mirror # mirror é o hd de espelho do SCSI que ficará em stand by /bin/rm /backup/TAG4 /usr/bin/touch /backup/TAG1 echo echo "...done." fi 1) seria um espelho do teu hd SCSI só que em outro micro 2) pois a velocidade é bem superior ao ATA IDE, de preferencia a hd´s de 10.000 rpm pois estes são os verdadeiros SATA. http://biosystems.ath.cx:8080/wiki/doku.php?id=rsync 2006/8/18, Thiago J. Ruiz <[EMAIL PROTECTED]>: > Hi All, > > estava googleando por uma solução de backup com rsync, achei algumas > coisas, testei e funciona, consigo salvar apenas o que mudou deletar o > que não existe no source e tudo mais, porém eu gostaria que os > arquivos que foram alterados fossem gravados ainda por um tempo em uma > outra pasta com uma mesma arquitetura de pastas (pra diferenciar de > onde veio o arquivo e talz), e quanto a isso eu não encontrei nada, > alguém de vcs ilustres amigos =D já conseguiu isso? > > abraços > > -- > Thiago J. Ruiz > ------------------------- > Histórico: http://www.fug.com.br/historico/html/freebsd/ > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd > -- -=-=-=-=-=-=-=-=-=- William David Armstrong <----. Of course it runs Bio Systems Security Networking <----|========================== MSN / GT [EMAIL PROTECTED] <----' OpenBSD or FreeBSD -------------------------------------- ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd