mtime을 유지하면서 user1과 userN 파일의 양방향 동기화를 달성하는 방법은 무엇입니까?

mtime을 유지하면서 user1과 userN 파일의 양방향 동기화를 달성하는 방법은 무엇입니까?

사용자 1두 컴퓨터 간의 양방향 동기화를 원합니다.사용자 1예 회원그룹 2그리고 권한이 없는 SSH 터널이 있습니다. 다음과 같은 많은 파일과 디렉터리가 있습니다.

rwxrwx--- userN group2  enclair/WEB/CLIENTS/VictorMarty

일부 파일은 두 시스템 모두에서 편집되었으므로 수동으로 병합해야 했습니다. 따라서 저는 양쪽에서 작업하기 위해 rsync 대신 Unison을 선택했습니다.

unison을 위한 기본 설정 파일:

perms = -1
#group = true
#owner = true
times = true

내가 사용하는 양방향 동기화 명령은 다음과 같습니다.

$ unison "profile" -perms 0 -dontchmod

출력/결과:

...
UNISON 2.48.3 finished propagating changes at 02:29:24.90 on 13 Sep 2015

Saving synchronizer state
Synchronization incomplete at 02:29:25  (0 items transferred, 1 skipped, 60 failed)

failed: enclair/WEB/CLIENTS/VictorMarty 

timesprofile.prf 파일에 주석을 달아 작동하게 할 수 있습니다. 이 과정에서 mtime 메타데이터가 손실됩니다.

나는 다른 쪽에서 sudo unison과 sudo를 할 수 있다는 것을 보았습니다 --server-cmd. 그래서 unison은 실제로 루트로 실행되지만 연결은 여전히 ​​일반 사용자로 유지됩니다.

파일 수정 시간을 유지하기 위해 양방향 동기화를 구현하는 방법입니까? user1을 유지하는 것이 가장 좋습니까?

답변1

동기화에 필요한 기간에 따라 두 개의 rsync 프로세스를 사용할 수 있습니다. rsync -au <source> <dest>각 호스트에서 실행할 크론 작업을 설정합니다 . 이렇게 하면 특정 시간 내에 두 호스트가 "동기화"됩니다. 파일이 변경되면 inotify를 사용하여 rsync를 실행할 수도 있습니다.

관련 정보