rsync가 파일을 재전송하는 이유 알아보기

rsync가 파일을 재전송하는 이유 알아보기

Linux 서버(reiserfs)의 디렉토리를 MacOSX 10.13을 실행하는 MacBook에 연결된 외장 HDD(hfs)에 백업하고 싶습니다.

Gentoo Linux이고 rsync 버전 3.1.2가 설치되어 있습니다. MacOSX에서는 Homebrew를 통해 rsync 3.1.2를 설치했습니다.

이제 나는 flag 를 사용합니다 -aAxzPiv --delete-delay. 예전에도 그랬지만 -X왜냐면이 업스트림 rsync 3.1.2 버그나는 그것을 제거했다. root모든 내용을 읽을 수 있는 전체 권한을 가지고 Linux 서버 에 연결하고 sudoMacOSX에서와 마찬가지로 실행했습니다. 즉 다음과 같습니다.

sudo rsync -aAxzPiv --delete-delay root@server:/mnt/data6 .

일부 디렉토리/파일이 항상 재전송된다는 점을 제외하면 대부분 작동하는 것 같습니다(어떤 경우에는 삭제된 다음 전송되었지만 저는 그랬습니다 --delete-delay). 이것이 내가 어려움을 겪고 있는 것입니다.

rsync첫 번째 질문: 재전송/삭제되어야 한다고 생각하는 이유에 대한 정보를 제공 할 수 있는 좋은 플래그가 있습니까 ? 예 -v, --info그러면 --debug이것이 나에게 주어질 수 있습니다. 그러나 이것들의 정확한 징후는 무엇입니까? (편집: 고마워요, -i지금 추가했는데 아직 제한적이지만 약간 도움이 됩니다.)

대상 파일에 시간이 올바르게 저장되지 않기 때문에 이것이 문제가 될 수 있다고 생각합니다. 아니면 디렉토리에 있을 수도 있습니다. 예를 들면 다음과 같습니다.

...
>f..t....... .../Documents/Topologische Spiele und resourcenbeschränkte Baire-Kategorie.pdf
    332,553 100%   15.86MB/s    0:00:00 (xfr#87, ir-chk=1062/50500)
...
>f.st..g.... .../OpenLieroX/Tools/GameCompiler/src/main.cpp
     14,813 100%   14.13MB/s    0:00:00 (xfr#88, ir-chk=1004/198016)
...
>f.st..g.... .../openlierox/tools/GameCompiler/src/main.cpp
      3,891 100%    3.71MB/s    0:00:00 (xfr#95, ir-chk=1003/410613)
...
>f.st....... .../Robot/Main/uMainForm.o
    276,724 100%  330.77kB/s    0:00:00 (xfr#93, ir-chk=1455/198859)
...
*deleting   .../Reise/SF2015/A1602080010(Zeyer).pdf
*deleting   .../Reise/SF2015/
...
.../Reise/SF2015/
.../Reise/SF2015/A1602080010(Zeyer).pdf
        126,218 100%  100.29kB/s    0:00:01 (xfr#566, ir-chk=1001/470897)
...

여러 가지 문제가 있는 것 같아요. 예를 들어 ...resourcenbeschränkte...유니코드 인코딩 문제일 수 있습니다. 그러면 대상 파일 시스템이 대소문자를 구분하지 않기 때문에 openlieroxvs 에 문제가 발생할 수 있습니다. 특별한 논리가 있는 경우 이 경우 어떻게 작동해야 하는지 OpenLieroX잘 모르겠습니다 . rsync그런 다음 예를 들어 알 수 없는 이유로 파일이 uMainForm.o항상 재전송됩니다(그러나 먼저 삭제되지는 않음). 그런 다음 SF2015먼저 모든 파일이 포함된 디렉터리를 삭제한 후 다시 전송하세요.

삭제되는 디렉토리와 관련하여. 서버에서 stat해당 디렉토리의 a는 다음을 제공합니다.

$ stat .../texte1
  File: '.../texte1'
  Size: 8664        Blocks: 17         IO Block: 4096   directory
Device: 811h/2065d  Inode: 181281      Links: 45
Access: (0755/drwxr-xr-x)  Uid: ( 1002/      gz)   Gid: (  100/   users)
Access: 2016-07-21 03:19:33.000000000 +0200
Modify: 2016-02-06 18:58:10.000000000 +0100
Change: 2016-07-21 03:19:33.000000000 +0200
 Birth: -

Mac에서는 다음을 얻습니다.

$ stat .../texte1
16777225 8884695 drwxr-xr-x 236 (1002) _lpoperator 0 8024 "Nov  4 14:06:39 2017" "Nov  4 14:02:07 2017" "Nov  4 14:02:07 2017" "Feb  6 18:58:10 2016" 4096 0 0 .../texte1

시대에 뒤떨어진 것 같아요.

그럼 다음 질문입니다. 어떤 플래그를 사용해야 합니까? 소스 측에서 이름을 변경하여 대소문자를 구분하지 않는 문제를 수동으로 해결할 수도 있습니다(드물게 발생함). 유니코드 문제에도 마찬가지일 수 있습니다. 하지만 삭제/재전송이 잘 이해가 되지 않습니다.

rsync또한 MacOSX에서는 다른 버전을 사용해야 할까요 ? 원래 MacOSX rsync버전은 2.6.9였으며 몇 가지 다른 플래그가 있었습니다. 더 많은 문제가 있다는 것을 알았지만 완전히 확신할 수는 없습니다.

(관련은이 문제그러나 그것은 실제로 내 질문에 대답하지 않습니다. 반품이것.)

관련 정보