rsync in realtà non sta copiando i file


11

Sto cercando di sincronizzare una grande directory di file dal mio server con una casella locale. (Entrambi eseguono Ubuntu.) Ho un comando che sembra funzionare, ma alcuni file non vengono copiati:

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

Come puoi vedere, il file convert_matrix.htmlnon è stato copiato.

  1. Cosa sta facendo il comando, se non effettivamente copiare i file?
  2. Come ottengo per copiare effettivamente i file?

3
È per caso presente una cartella locale /var/www/phrogz.net/public/public?
enzotib,

Whoa, sì, c'è! Pubblicalo come risposta e dimmi come modificare il comando per non creare publicuna sottocartella e avrai 25 rep :)
Phrogz,

1
Rimuovi l'ultimo "pubblico" dal tuo script, in modo che diventi: rsync -rztpl --stats --rsh=/usr/bin/ssh 69.46.18.236:/var/www/phrogz.net/public /var/www/phrogz.net- dovrebbe farlo.
Cesio

Risposte:


18

Potresti semplificare il tuo comando a

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

o in alternativa

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

Come vedi, rsyncinterpreta in modo diverso una fonte con o senza trascinamento /.

Inoltre, -aequivale a -rtplogD, (rispetto alla riga di comando, -aaggiunge anche -o, preserva proprietario,, -gpreserva gruppo e -D, preserva dispositivi e file speciali).

Infine, l' --rshopzione è ridondante quando l'origine o la destinazione sono nel modulo host:/path, con un singolo :.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.