rsync는 실제로 파일을 복사하지 않습니다


11

서버에서 로컬 상자로 큰 파일 디렉토리를 동기화하려고합니다. (모두 우분투를 실행하고 있습니다.) 작동 하는 것처럼 보이는 명령이 있지만 특정 파일은 복사되지 않습니다.

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

보시다시피 파일 convert_matrix.html이 복사되지 않았습니다.

  1. 실제로 파일을 복사하지 않는 경우 명령은 무엇입니까?
  2. 실제로 파일을 복사하려면 어떻게해야합니까?

3
우연히 로컬 폴더가 /var/www/phrogz.net/public/public있습니까?
enzotib

우와, 그래! 답으로 게시 public하고 하위 폴더로 만들지 않도록 명령을 변경하는 방법을 알려주십시오. 25 rep :)
Phrogz

1
스크립트에서 최종 "공개"를 제거하면 다음과 같이됩니다 rsync -rztpl --stats --rsh=/usr/bin/ssh 69.46.18.236:/var/www/phrogz.net/public /var/www/phrogz.net.-해야합니다.
Cesium

답변:


18

당신은 명령을 단순화 할 수 있습니다

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

또는 대안 적으로

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

보다시피 rsync, 후행 유무에 관계없이 소스를 다르게 해석 /합니다.

또한, -a동등하다 -rtplogD, (명령 행에 대한이, -a또한 추가 -o, 소유자를 보존 -g, 그룹 보존하고 -D, 장치 및 특수 파일을 보존).

마지막으로 --rsh소스 또는 대상이 host:/path단일 형식 으로되어 있으면 옵션이 중복됩니다 :.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.