rsync a múltiples servidores remotos

10

Tengo un archivo que quiero enviar a varios servidores separados. ¿Es posible nombrar múltiples destinos?

rsync foo.png server1:foo.png server2:foo.png

Esto me da un "argumento remoto inesperado: servidor1: foo.png

Miati
fuente

Respuestas:

7

No, no hay forma rsyncde especificar múltiples destinos. Tendrá que invocar el comando varias veces. Si tiene muchos objetivos, es posible que desee considerar el uso de un sistema de archivos de red en su lugar, podría ser mejor para su problema.

John Zwinck
fuente
11

Resulta que hay un programa que permite esto, pero no el programa rsync original. Se llama pssh (ssh paralelo, supongo)

Una de las características:

"- Paralelo rsync (parallel-rsync, upstream lo llama prsync), copia eficientemente archivos a múltiples hosts en paralelo"
- http://www.ubuntugeek.com/execute-commands-sim simultáneamente-on-multiple-servers-using- psshcluster-sshmultixterm.html

Miati
fuente
0

Si bien está invocando el comando varias veces a través de la entrada del archivo, esto se puede hacer especificando los destinos deseados en un archivo deseado:

while read in; do rsync -av /Path/of/Source/Synced.file "$in":/Path/of/Destination/Synced.file; done < destinations.txt

ingrese la descripción de la imagen aquí

Por favor, disculpe mi prueba, ya que solo tenía dos sistemas disponibles en ese momento, pero estoy seguro de que esto funcionará para múltiples sistemas según lo deseado. Supongo que no es el método más elegante, pero definitivamente es una forma de automatización. Y por favor, siéntase libre de corregirme si esto no funciona ya que no tengo los recursos disponibles para probar más allá de dos sistemas en este momento de la publicación.

Brandon L
fuente