Pular para o conteúdo

Sistema de backup com rsyncd

Com este artigo mostrarei como implementar um sistema de backup em sua rede utilizando o rsync para realizar a sincronização de arquivos entre cliente(s) e servidor.
Carlos Marcelo Morgado Rêgo cmarcelo
Hits: 96.708 Categoria: Linux Subcategoria: Internet
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Introdução

"Fazer backup e ter certeza de que ele funciona é uma das coisas mais importantes que podem ser feitas para proteger os dados armazenados em um servidor. Geralmente não se pode prever acidentes, ataques, desastres e outros tipos de eventos que irão prejudicar os dados ou o próprio hardware. Quanto ao hardware, podemos consertar, utilizar outra máquina ou mesmo receber outra do seguro, ou seja, é algo que tem preço, pode ser comprado. Já os dados e arquivos dos usuários na maioria das vezes são insubstituíveis, podendo representar anos de trabalho, e a sua perda é algo que pode parar uma empresa ou ao menos afetar muito o andamento dos processos. Aí está a importância de existir um backup recente que possa ser restaurado no caso de qualquer incidente.

A estratégia de backup adotada nesta seção é simples e barata. Temos uma segunda máquina, que será o servidor de backup, conectada via rede ao servidor do qual será feito o backup, que será denominado cliente de backup. O backup será feito no disco rígido do servidor de backup. O programa utilizado será o rsync, cuja finalidade é prover um sistema de transferência de arquivos rápido e incremental. No primeiro backup o rsync irá copiar todos os arquivos para a máquina destino. Após isso, em cada backup ele irá apenas atualizar os arquivos que estão no backup, sincronizando-os com os originais. Desta forma são transferidos pela rede apenas as diferenças entre os arquivos original e backup, tornando o processo mais rápido. A página do rsync é rsync.samba.org."

Heini Thomas Geib.

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
   1. Introdução
   2. Servidor de backup
   3. Cliente de backup
   4. Bibliografia

Escondendo banners de serviços

Como instalar um servidor de Counter-Strike

PHP 6.0 - Você está pronto?

Usando 3G da Vivo no Slackware 13.1

Conectividade Social vs. proxy Squid transparente

Youtube + Buddy Poke x Iceweasel + Flash no Debian Etch

Por que eu pago por 10 megas, mas só faço download a 1 mega?

#1 Comentário enviado por jpfaria em 18/11/2004 - 11:23h
OPa marcelo, tome cuidado com os nomes dos arquivos.. uma hora vc diz que eh rsynd.conf e outra hora vc diz que é rsync.conf isso pode confundir usuários iniciantes.

[]'s
#2 Comentário enviado por cmarcelo em 18/11/2004 - 12:57h
Com certeza João Paulo,
Este pequeno erro eu realmente não notei em minhas revisões.

PARA TODOS, ALTERAR:
No ítem 2.3
"Os arquivos /etc/rsync.conf e /etc/rsync.secrets DEVERÃO ter permissão 600."
É /etc/rsyncd.conf e não /etc/rsync.conf

Desculpem-me

Carlos Marcelo
#3 Comentário enviado por dangelo em 18/11/2004 - 15:13h
Marcelo

O artigo esta muito bem escrito, parabens.

Tenho uma pergunta e uma sugestão.

Primeiro a pergunta, qual a vantagem de fazer esta configuração ao invés de usar o rsync com ssh que pra mim parece bem mais simples?

E a sugestão, para quem precisa manter versões dos arquivos alterados, uma dica é usar o rdiff-backup.
#4 Comentário enviado por armandogozarem em 19/11/2004 - 17:33h
Pessoal tó com umas dificuldades, eu acho que alguem poderia me ajudar...

Fiz o script na máquina do backup, mas ela nao consegue se loga automaticamente no servidor do backup. Tá pedindo senha, para funcionar tenho que por a senha, o processo não tá sendo automatico!!

o que será que está errado?

/usr/bin/rsync -pavR --delete --password-file=/etc/rsync.pass /etc adm-armando@192.168.1.10:
#6 Comentário enviado por cmarcelo em 20/11/2004 - 02:41h
Armando,

Há um pequeno erro ao indicar o server:

"/usr/bin/rsync -pavR --delete --password-file=/etc/rsync.pass /etc adm-armando@192.168.1.10:"

Alterar "adm-armando@192.168.1.10:" para "<usuario>@<server>::<modulo>/"

Deverá funcionar,

Carlos Marcelo
#7 Comentário enviado por armandogozarem em 22/11/2004 - 10:47h
ok faltava o nome do módulo mas quando aplico o comando:

"/usr/bin/rsync -pavR --delete --password-file=/etc/rsync.pass /etc adm-armando@192.168.1.10::backup/" , veja só o erro que ocorre:

@ERROR: auth failed on module backup
rsync: connection unexpectedly closed (89 bytes read so far)
rsync error: error in rsync protocol d#

Pareçe alguma configuração no servidor que não ativo os módulos.

Configuração do Servidor

# /etc/rsyncd.conf
#

# Usuário sob o qual o rsync irá rodar
uid=root

# Grupo sob o qual o rsync irá rodar
gid=root

# Arquivo de log
log file = /var/log/rsyncd.log

hosts allow = 192.168.1.10

# Módulo para backup
[backup]
path = /backup
auth users = adm-armando
secrets file = /etc/rsyncd.secrets
read only = true
list = false
transfer logging = yes
log format = %t: host %h (%a) %o %f (%l bytes). Total %b bytes.
ata stream (code 12) at io.c(150)

e o arquivo

#
# /etc/rsync.secrets
#

# Usuários e senhas que se conectarão ao servidor
# Formato:
# <usuario>:<senha>
adm-armando:teste


#8 Comentário enviado por juglenijr em 05/04/2005 - 17:23h
Pessoal instalei com o artigo informa e esta dando erro:

/etc/rc.d/rc.rsync: line 24: unexpected EOF while looking for matching `"'
/etc/rc.d/rc.rsync: line 26: syntax error: unexpected end of file

Estou utilizando o Fedora Core 3 com o Kernel 2.6.10
Instalei o rsync pelo apt-get

O que esta acontecendo?

Notei que no diretorio .../xinetd.d/ tem um arquivo rsync com o conteudo:

# default: off
# description: The rsync server is a good addition to an ftp server, as it \
# allows crc checksumming etc.
service rsync
{
disable = yes
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = --daemon
log_on_failure += USERID
# RSYNC_ENABLE=true
# RSYNC_OPTS='--config=/etc/rsyncd.conf --port=873'
}

esta 2 estruçoes comentadas foi eu que coloquei mais nao funfa..

mais eu criei o arquivo rc.rsync no rc.d como informa o artigo..

Abraço
#9 Comentário enviado por juglenijr em 05/04/2005 - 17:47h
Com a ajuda de uns amigos encontramos a falta de uma ASPA no codigo rc.rsyncd

#!/bin/bash
#
# /etc/rc.d/rc.rsyncd
#

# Executável do rsync
RSYNC="/usr/bin/rsync"
# Opções de inicialização
RSYNC_OPTS="--config=/etc/rsyncd.conf --port=873"


case $1 in
start)
$RSYNC --daemon $RSYNC_OPTS
;;
stop)
killall rsync
;;
restart)
killall rsync
$RSYNC --daemon $RSYNC_OPTS
;;
*)
echo "Use: /etc/rc.d/rc.rsync {start|stop|restart}" ############## Aqui
esac

Esta esta correto agora
#10 Comentário enviado por juglenijr em 05/04/2005 - 19:09h
pessoal agora nao estou conseguindo usar o script do cliente, esta dando erro:

@ERROR: auth failed on module servidor-softcomp
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(359)
@ERROR: auth failed on module servidor-softcomp
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(359)
@ERROR: auth failed on module servidor-softcomp
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(359)

Fim do backup - Ter Abr 5 15:03:53 BRT 2005

Portugues ###################
falha ao autenticar no módulo servidor-softcomp conecção fechada inesperadamente ( recebidos 0 bytes)
erro na transmissão de dados do protocolo do rsync (código 12) em io.c(359)
###################

Acho estranho porque ele informa que o bkp finalizou
#11 Comentário enviado por crcorrea em 18/05/2006 - 15:04h
Nao descobre o motivo do erro descrito abaixo?
alguem teve este problema :

Inicio do backup - Thu May 18 14:57:27 BRT 2006
@ERROR: access denied to XXXXX from XXXX.operacao.xx(200.200.1004.00)
rsync: connection unexpectedly closed (85 bytes read so far)
rsync error: error in rsync protocol data stream (code 12) at io.c(150)
Fim do backup - Thu May 18 14:57:28 BRT 2006
#12 Comentário enviado por rockstore6 em 19/07/2007 - 10:17h
muito bom gostei mas eu queria saber também c dar pra fazer back do sistema mesmo todinho saca do linux
#13 Comentário enviado por andromeda em 24/10/2007 - 10:14h
Muito bom mesmo!!!! Você manda muito bem Marcelo!!!!!
Aprendi muito nesse artigo!!!!

[]'s
#14 Comentário enviado por jeffr2 em 11/03/2014 - 13:24h
ressucitando o topico, alguem me ajude por favor.. o rsyncd.secrets é obrigatorio? nao ha uma forma do sistema utilizar o root por padrao?

Contribuir com comentário

Entre na sua conta para comentar.