rsync가 btrfs 쓰기 중 복사 파일을 존중하도록 만들기

rsync가 btrfs 쓰기 중 복사 파일을 존중하도록 만들기

rsync가 btrfs와 같은 파일 시스템의 쓰기 중 복사 파일을 존중하도록 할 수 있습니까?

한 btrfs fs에서 다른 btrfs fs로 1GB 파일과 해당 파일의 쓰기 중 복사 복제본(따라서 1GB가 공유됨)을 동기화하기 위해 몇 가지 테스트를 시도했지만 rsync는 btrfs filesystem du데이터를 얻을 때 2GB의 데이터를 보냅니다. 동기화되면 파일이 0바이트 공유됩니다. 따라서 rsync는 CoW 복사본 대신 수신 측에 새 복사본을 생성합니다.

답변1

이 기능은 현재 지원되지 않습니다 rsync.

그러나 다음과 같은 몇 가지 방법으로 이 문제를 해결할 수 있습니다.

  • rsync가 두 파일을 전송하도록 한 다음 btrfs 중복 제거 도구를 사용하여 원격 측에서 중복을 제거합니다.
  • 파일을 자체 btrfs 하위 볼륨에 배치 btrfs send하고 btrfs receive.
  • rsync하나의 파일을 복제한 다음 --checksum --inplace --no-whole-file강제 rsync를 사용하여 첫 번째 파일과의 차이점만 포함하도록 두 번째 파일을 패치합니다.

관련 정보