rsync de um controle remoto para outro

2

Eu tenho 3 servidores. Chame-os de A, B e C. B e C são remotos e só têm A em seu hosts.allow.

O que eu preciso fazer é entrar em A, e então rsync em SSH os arquivos de B para C. Eu quero usar rsync porque muitos dos arquivos estão similarmente presentes em ambos B e C.

Eu poderia tentar rsync de B - > A e depois de A - > C, exceto que eu não tenho espaço suficiente em disco em A, então eu teria que encontrar alguma maneira de "chunking" os arquivos e eu não vejo uma maneira óbvia de agrupá-los, e mesmo se eu fizesse, eu Teria de babá demais, com a exclusão de arquivos do disco de A, reiniciando o processo com o próximo pedaço etc.

Então, é possível para mim rsync entre os dois servidores? Eu não acho que serei capaz de fazer com que alguém mude o host.allow para mim: (

    
por user7655 20.03.2011 / 03:47

1 resposta

4

Você deve ser capaz de configurar um túnel SSH de A- > B e de A-C, e então rsync diretamente de B- > C atravessando esse túnel.

Vai ser um pouco complicado, mas basicamente você faz o seguinte:

  1. Configurar um daemon rsync em uma porta alta (digamos 20000) em B
  2. Configure um LocalForward A: 20000 para B: 20000 com ssh
  3. Configurar um RemoteForward de C: 20000 para A: 20000 com ssh
  4. Em C, rsync -av / caminho rsync: // localhost: 20000 / caminho

Lembre-se de que todo esse tráfego entrará e sairá da rede em A e será criptografado, por isso provavelmente será muito lento. pode valer a pena ver se B é realmente firewall de C, você pode ser capaz de executar o servidor rsync em uma porta alta e conectar diretamente.

    
por 20.03.2011 / 04:45

Tags