Implantando rsync server no Windows para conexões via Linux

Esse procedimento tem como objetivo principal sanar uma necessidade que pode ser encontrada quando temos que efetuar backup, via rsync, de um servidor Linux para um servidor Windows. Resolvi postar dessa forma pois encontramos a necessidade em nosso ambiente e depois de alguns testes chegamos ao resultado esperado.

[ Hits: 55.157 ]

Por: rafael vieira martins em 29/06/2010


Criando os usuários



Para que o Linux possa transferir os arquivos para o Windows através do cliente rsync, é necessário que os dois sistemas possuam usuários iguais para realizar essa tarefa. No Windows, o usuário pode ser local ou do domínio e é necessário a criação de um arquivo que será lido no momento que o cliente solicita a transferência.

Esse arquivo é o passwd (também será necessária a criação de um arquivo group que será mostrado mais adiante).

No Linux, a criação do comando pode ser a convencional, através do adduser.

No Windows, crie um usuário local através do painel de controle e atribua uma senha qualquer (a senha não será requerida em nenhum momento).

Em nosso exemplo foi criado tanto no Linux quanto no Windows um usuário chamado "teste". Depois de criados os usuários, partimos para a parte mais importante dessa tarefa que é a criação dos arquivos passwd e group.

No Windows:

Clique em iniciar > Executar > digite CMD (enter). Em seguida no prompt de comando do Windows, digite:

cd \ (enter)
cd ICW\bin (enter) (partindo do princípio de que foi instalado em c:\icw)

Em seguida digite os seguintes comandos que estão dentro de c:\ICW\bin

mkpasswd.exe -l > ..\etc\passwd
mkgroup.exe -l > ..\etc\group


Esses comandos basicamente irão ler a base local de usuários e grupos do Windows e ao mesmo tempo vão direcionar a saída para os arquivos passwd e group para o diretório C:\ICW\etc.

Página anterior     Próxima página

Páginas do artigo
   1. Instalação
   2. Criando os usuários
   3. Rsyncd.conf
Outros artigos deste autor

Assinatura e criptografia de dados com GPG

Leitura recomendada

EasyBCD - Corrigindo boot do Ubuntu 12.04 em HD USB no Sony VAIO

Tutorial de Instalação do Módulo Gerente em Servidor FreeBSD

Criando pacotes no Slackware Linux

Configurando placa de som CMI8738

Instalando Prolink Pixelview PV-BT878P+

  
Comentários
[1] Comentário enviado por felipe_sama em 29/06/2010 - 17:07h

Olá Rafael, você poderia me informar se as permissões dos arquivos são mantidas se eu precisar voltar com os arquivos no windows?

[2] Comentário enviado por JuandePaula em 29/06/2010 - 17:15h

Rafael, obrigado pelo artigo.
Vou implantar no meu Servidor.

Preciso fazer bkp para storage remoto.

Vlw.

Juan de Paula
Gerente de TI

[3] Comentário enviado por rafaelvieira em 30/06/2010 - 09:38h

Olá Felipe, no caso das permissões ocorre o seguinte.

Como o Windows tem um esquema de permissões diferente do Linux. Quando os arquivos forem transferidos para o Windows, é como se eles estivessem sendo criados naquele momento por um usuário, portanto ele herdará as permissões padrões do Windows independente de como esta no linux. Quando houver o restore, as permissões serão as nativas do linux como se os arquivos estivessem sendo criados naquele momento. De acordo com a UMASK definida no sistema.

Grato.!

[4] Comentário enviado por geovaneroberto em 03/12/2011 - 11:53h

Boa tarde!

Olá Rafael, eu estou tentando utilizar este tutorial seu mas da erro de conexão.

geovane@localhost:/home$ rsync -Cravz --chmod=u=rwx,g=rx,o=rx --progress --partial --delete-excluded arquivos/ rsync://192.168.0.133/test
rsync: failed to connect to 192.168.0.133: Connection timed out (110)
rsync error: error in socket IO (code 10) at clientserver.c(122) [sender=3.0.7]
geovane@localhost:/home$

Instalei a versão cwRsyncServer_4.0.6_Installer no windows7, e o linux que estou tentando usar é o debian.

Pode me ajudar?

Abraço

[5] Comentário enviado por geovaneroberto em 03/12/2011 - 12:39h

Rafael!

Achei o problema era no user e senha do win, porém toda vez que rodo o comando ele deleta o conteudo da pasta e não faz o sincronismo, o que acha que pode ser?


geovane@localhost:~$ rsync -Cravz --chmod=u=rwx,g=rx,o=rx --progress --partial --delete-excluded arquivos/ rsync://192.168.0.133/test
sending incremental file list
./
deleting Nova pasta/
deleting Nova pasta (2)/

sent 48 bytes received 11 bytes 10.73 bytes/sec
total size is 0 speedup is 0.00
geovane@localhost:~$

Ele sempre deleta e nao copia do linux -> windows e nem windows -> Linux.

=(

[6] Comentário enviado por rafaelvieira em 06/12/2011 - 11:16h

Ola Geovane, eu tenho um servidor linux efetuando esse procedimento atualmente para um Server 2008 R2, e esta funcionando perfeitamente.

O que ele faz nesse comando, é um backup incremental, portanto ele atualizara o conteudo do diretório no windows de acordo com o diretorio de origem. Por exemplo se na hora que estiver rodando o comando, nao existir nenhuma pasta ou arquivo no diretorio no linux ele vai sincronizar o windows e remover tbm.

Faça um teste básico.

Crie 3 arquivos de texto no linux e efetue o rsync. (Veja se copiou)
Modifique os tres no linux e efetue pra ver se sincronizou. (verifique se alterou)
Modifique os tres no windows e efetue o rsync pra ver se sincronizou.
Delete os tres no Linux e efetue o rsync.

Apenas com esses testes podemos identicar o problema ai no seu ambiente.

Abs.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts