você está aqui: Home  → Arquivo de Mensagens

Sincronismo de conteúdo entre servidores

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 05 de Setembro de 2001

Para transferir o conteúdo de diretórios ou partições entre dois computadores, o rsync é o aplicativo que melhor se adequa.

Ele faz o sincronismo de conteúdo e apenas os arquivos que mudarem, ou partes deles, são transferidos. O primeiro sincronismo, por envolver todo o conteúdo, é mais demorado. Os sincronismos subsequentes ocorrem rapidamente pois apenas as diferenças são transmitidas.

O rsync deve rodar em modo daemon em um dos computadores, aquele que irá receber as solicitações de transferência. Para isto, invocar o comando rsync:

  # rsync --daemon

O rsync irá então ler um arquivo de configuração, geralmente /etc/rsyncd.conf, a partir de onde obterá as informações sobre como deverá funcionar e a quais diretórios será permitido o acesso.

Para sincronizar o conteúdo remotamente, basta invocar então o comando rsync como abaixo:

  % rsync -avz -e ssh www.ccuec.unicamp.br:/home .

O comando acima irá contactar a máquina www.ccuec.unicamp.br e fará o sincronismo do diretório remoto /home na máquina local.

As opções significam:

  -a - Esta flag é uma combinação de diversas outras opções
       que significam basicamente que se deseja a recursão
       e que se preserve todas as propriedades dos arquivos
       (permissões, etc.)
  -z - transferir os dados compactados
  -v - trabalhar em modo verboso, exibindo todos os arquivos
       sendo transferidos e informações sobre a conexão.
  -e ssh - indica que a transferência será feita através do
           ssh, garantindo a transmissão segura dos dados.

Além destas opções, o rsync possui diversas outras, que nos permitem uma grande flexibilidade na forma de trabalho. Para mais informações ler a man page do comando rsync.

No lado do servidor, incluo a seguir um modelo do arquivo /etc/rsyncd.conf, que permite aos usuários queiroz, mgm e root, o acesso a partir da partição raiz.

  uid = nobody
  gid = nobody
  log file=/var/log/rsyncd
  pid file = /etc/rsyncd.pid
  max connections = 4
  use chroot = no
  syslog facility = local5
  [/]
          comment=usr
          path=/usr
          read only=false
          list=true
          hosts
          allow=200.200.20.20/255.255.255.0
          auth users = queiroz, mgm, root


 

 

Veja a relação completa dos artigos de Rubens Queiroz de Almeida

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script