rsync en realidad no copia archivos


11

Estoy tratando de sincronizar un gran directorio de archivos desde mi servidor a un cuadro local. (Ambos ejecutan Ubuntu). Tengo un comando que parece que funciona, pero ciertos archivos no se copian:

phrogz@planar:~$ cat ./sync-phrogz-public 
rsync -rztpl --stats --rsh=/usr/bin/ssh 69.46.18.236:/var/www/phrogz.net/public /var/www/phrogz.net/public

phrogz@planar:~$ ./sync-phrogz-public 
Number of files: 10320
Number of files transferred: 0
Total file size: 4221864770 bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 197778
File list generation time: 0.001 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 388
Total bytes received: 199213

sent 388 bytes  received 199213 bytes  79840.40 bytes/sec
total size is 4221864770  speedup is 21151.52

phrogz@planar:~$ la /var/www/phrogz.net/public/svg/convert*
-rw-r----- 1 phrogz www-admin 6404 2011-02-26 21:49 /var/www/phrogz.net/public/svg/convert_path_to_polygon.xhtml

phrogz@planar:~$ ssh 69.46.18.236 'ls -Fla /var/www/phrogz.net/public/svg/convert*'
-rw-r--r-- 1 phrogz phrogz 1951 2011-12-04 09:07 /var/www/phrogz.net/public/svg/convert_matrix.html
-rw-r--r-- 1 phrogz phrogz 6404 2011-02-26 21:49 /var/www/phrogz.net/public/svg/convert_path_to_polygon.xhtml

Como puede ver, el archivo convert_matrix.htmlno se copió.

  1. ¿Qué está haciendo el comando, si en realidad no está copiando archivos?
  2. ¿Cómo consigo que realmente copie los archivos?

3
¿Es por casualidad presentar una carpeta local /var/www/phrogz.net/public/public?
enzotib

Whoa, si, lo hay! Publíquelo como respuesta y dígame cómo cambiar el comando para no crear publiccomo una subcarpeta, y
tendrá

1
Elimine el "público" final de su script, para que se convierta en: rsync -rztpl --stats --rsh=/usr/bin/ssh 69.46.18.236:/var/www/phrogz.net/public /var/www/phrogz.net- debería hacerlo.
Cesio

Respuestas:


18

Podrías simplificar tu comando para

rsync -az --stats 69.46.18.236:/var/www/phrogz.net/public /var/www/phrogz.net/

o alternativamente

rsync -az --stats 69.46.18.236:/var/www/phrogz.net/public/ /var/www/phrogz.net/public

Como puede ver, rsyncinterpreta de manera diferente una fuente con o sin un final /.

Además, -aes equivalente a -rtplogD(con respecto a su línea de comando, -atambién agrega -o, preservar propietario -g, preservar grupo y -Dpreservar dispositivos y archivos especiales).

Finalmente, la --rshopción es redundante cuando el origen o el destino está en el formulario host:/path, con un solo :.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.