먼저 확인
rclone sync는 목적지에만 있는 파일을 삭제할 수 있습니다. 먼저 --dry-run으로 삭제·복사 예고와 원본→목적지 방향을 읽고, 예상 밖 삭제나 빈 원본이 보이면 멈추세요. 종료 코드0은 미리보기 완료이며 실제 동기화나 안전 확인의 증거가 아닙니다. 이 글에서는 실제 sync로 넘어가지 않습니다.
기본 정보
- 대상
- copy 대신 sync를 검토하는 사용자의 실행 전 판단
- 예제 환경
- Windows PowerShell · rclone1.75.2 x64 · 자체 로컬 TXT
- 방향
- 첫 경로 SOURCE → 두 번째 경로 DESTINATION
- 실행 범위
- 모든 sync 명령에 --dry-run · 실제 복사/삭제 없음
- 보고서
- 원본·목적지 바깥에 별도 파일로 기록
- 중단 기준
- 예상 밖 삭제·빈/없는 원본·방향 오류·읽기 실패
목차
1. 실행 전 확인 순서
-
1. 작은 자체 폴더 준비
새 예제 원본과 예제 목적지를 나란히 만들고 동명·일치·한쪽 전용 파일을 구분합니다. 다운로드와 제품 선택은 rclone 페이지에서 확인하세요.
-
2. 방향부터 확인
첫 경로가 기준 원본이고 두 번째가 변경 대상 목적지인지 적어 봅니다. 목적지 전용 자료를 남길 필요가 있으면 copy와 비교합니다.
-
3. dry-run 실행
--dry-run을 유지하고 --combined 보고서를 두 폴더 밖에 기록합니다. 명령 직후 종료 코드와 로그를 읽습니다.
-
4. 예고와 중단 조건 읽기
목적지 전용 삭제·동명 파일 덮어쓰기·새 복사의 예고가 의도와 맞는지 확인합니다. 빈 원본이나 뜻밖의 목록이면 실행하지 않습니다.
-
5. 파일 보존 확인
원본/목적지의 목록과 내용이 이전과 같은지 대조합니다. 이 글의 결과는 실행 전 판단이며 실제 동기화 완료가 아닙니다.
2. 예제 준비
아래는 클라우드가 아닌 새 로컬 폴더로 확인하는 Windows PowerShell 예제입니다. rclone.exe가 있는 작업 폴더에서 PowerShell을 열고 그 안에 예제 원본과 예제 목적지를 나란히 만드세요. 두 폴더를 서로 안에 넣지 않습니다. 이미 PATH를 사용한다면 명령의 .\rclone.exe 대신 rclone을 사용할 수 있습니다.
| 상대 경로 | 원본 / 목적지 |
|---|---|
| 일치.txt | 양쪽에 같은 내용 MATCH |
| 같은 이름.txt | 원본 AAAA / 목적지 BBBB |
| 하위 폴더/한글 메모.txt | 원본에만 짧은 메모 |
| 목적지 전용.txt | 목적지에만 짧은 메모 |
실제 사용자 자료를 이 예제 폴더에 넣지 말고 짧은 가짜 TXT만 만드세요. 파일명·내용과 양쪽 목록을 미리 적어 둡니다. 연결된 폴더·심볼릭 링크·필터·특수 저장소는 이 예제의 범위에 포함하지 않습니다.
3. 원본과 목적지
sync의 첫 경로가 SOURCE, 두 번째가 DESTINATION입니다. 원본의 폴더 내용을 기준으로 목적지를 맞추므로 목적지에만 있는 자료가 변경 대상입니다. 목적지를 기준 원본으로 착각하지 않았는지 확인하세요.
목적지에 추가 자료를 계속 남겨야 한다면 sync가 맞는지부터 다시 판단합니다. rclone copy와 사본 결과 검증은 목적지 전용 파일을 남기는 복사 과업을 다룹니다. copy도 동명 파일을 덮어쓸 수 있어 이전 버전 보관과는 구분해야 합니다.
4. 미리보기
경로에 공백이 있어 따옴표로 감쌉니다. 아래 한 줄을 실행합니다. --checksum은 크기와 사용 가능한 해시로 비교하며, 이번 로컬 TXT 예제에서는 크기가 같은 다른 내용도 구분했습니다. 지원 해시가 없는 저장소는 같은 조건이라고 가정하지 마세요.
.\rclone.exe sync ".\예제 원본" ".\예제 목적지" --dry-run --checksum --combined ".\sync-preview.txt" --retries 1 -v
명령이 끝나면 다음 값을 바로 확인합니다. 다른 외부 명령을 실행하기 전에 읽으세요.
$LASTEXITCODE
그다음 보고서를 읽습니다. sync-preview.txt는 두 대상 폴더 밖의 현재 작업 폴더에 기록됩니다. 기존 보고서가 있다면 새 이름을 사용하세요.
Get-Content -LiteralPath ".\sync-preview.txt" -Encoding UTF8
dry-run을 유지하세요
로그의 Skipped delete/copy as --dry-run is set은 삭제·복사 예고를 실제로 실행하지 않았다는 뜻입니다. 이 가이드에서는 --dry-run을 제거하지 않습니다. 파일 동기화와 별개로 지정한 보고서 파일은 생성되거나 다시 기록됩니다.
5. 보고서 읽기
| 표시 | 확인할 것 |
|---|---|
| - 목적지 전용.txt | 원본에 없고 목적지에만 있음. 이번 기본 예제에서는 삭제 예고 |
| + 하위 폴더/한글 메모.txt | 목적지에 없고 원본에만 있음. 새 복사 예고 |
| * 같은 이름.txt | 양쪽에 있으나 비교 결과가 다름. 원본 내용으로 덮어쓰기 예고 |
| = 일치.txt | 이번 비교 기준에서 같음. 이전 버전/메타데이터 보관 확인과는 별개 |
| ! 경로 | 원본이나 목적지 읽기·해시 오류. 로그와 종료 결과 확인 |
행 순서는 달라질 수 있습니다. 기호 뒤의 전체 상대 경로와 실제 파일을 대조하세요. 방향을 뒤집으면 원본 전용/목적지 전용이 바뀝니다. 직접 시험에서도 원본 전용 메모가 삭제 예고(-)로, 목적지 전용 파일이 복사 예고(+)로 바뀌었습니다. 뜻밖의 예고를 발견하면 방향과 범위부터 다시 확인합니다.
이 기호는 경로의 비교 상태를 기록합니다. 필터와 제외 파일 정책이 바뀌면 삭제 범위도 달라지므로 -행 모두가 어떤 옵션에서도 반드시 삭제된다는 규칙으로 사용하지 마세요. 자세한 예외는 공식 sync의 Logger Flags를 확인합니다.
6. 멈출 조건
- 목적지에 남겨야 할 파일이 삭제 예고에 있거나 같은 이름의 이전 내용을 보관해야 하는 경우
- 원본·목적지 방향이 뒤집혔거나 경로/범위를 확신하지 못하는 경우
- 원본이 비어 있거나 예상한 파일이 없는 경우. 파일이 없다는 이유만으로 올바른 원본이라고 판단하지 않습니다.
- 읽기·해시·경로 오류, !행, 0이 아닌 종료 결과가 있는 경우
- 확인 중 파일이 바뀌거나 제외 조건·연결 경로·보고서 범위를 설명할 수 없는 경우
빈 폴더와 없는 폴더는 다릅니다. 직접 시험에서 없는 원본은 directory not found와 종료3으로 멈췄지만, 존재하는 빈 원본은 종료0으로 목적지3파일 삭제를 예고했습니다. 성공한 미리보기에서도 의도와 다른 삭제 목록이면 여기서 멈추고 경로·원본 범위를 다시 확인하세요.
7. 파일 보존과 한계
미리보기 뒤 파일 탐색기에서 양쪽의 상대 경로·파일 개수·크기를 대조하고 TXT를 열어 내용이 이전과 같은지 확인합니다. 크기만 같다고 내용까지 같다는 뜻은 아닙니다. 이번 시험은 양쪽 각3파일의 상대 경로·크기·SHA256을 명령 전후 대조해 모두 같은 것을 확인했습니다.
| 경우 | 예고 / 파일 보존 |
|---|---|
| 정방향 | 삭제1·동명 차이1·새 복사1·일치1 / 양쪽 지문 동일 |
| 방향 반전 | 전용 파일의 +/-가 바뀜 / 양쪽 지문 동일 |
| 없는 원본 | 오류·종료3 / 기존 양쪽 지문 동일 |
| 빈 원본 | 목적지3파일 삭제 예고·종료0 / 기존 양쪽 지문 동일 |
보고서는 작업 중 기록되는 예측 자료입니다. --retries 1은 상위 재시도로 행이 중복되는 상황을 줄이지만 이후 실제 실행 결과를 보증하지 않습니다. --no-traverse를 사용하면 목적지 전용 파일의 기록이 불완전하거나 없을 수 있고, 공식 문서에 다른 제한도 있습니다. 미리보기 뒤 자료·옵션이 바뀌면 이 결과를 그대로 적용하지 마세요.
확인 범위는 자체 로컬 일반 파일입니다. 실제 sync 실행, 클라우드 인증·비용·권한, 삭제 복원, 빈 폴더·메타데이터·시스템 백업까지 검증한 것은 아닙니다. rclone 용도와 공식 배포 또는 추가 파일을 남기는 copy와 결과 검사로 돌아가 필요한 작업을 선택하세요.
8. 자주 묻는 질문
dry-run이 종료0이면 동기화가 완료됐나요?
+
아니요. 실제 복사·삭제를 수행하지 않은 미리보기의 종료 결과입니다. 예고 목록과 방향이 맞는지 별도로 확인해야 하며 빈 원본도 종료0으로 목적지 전체 삭제를 예고할 수 있습니다.
보고서의 -는 항상 삭제 확정인가요?
+
원본에 없고 목적지에만 있다는 비교 표시입니다. 이번 필터 없는 기본 예제에서는 삭제 예고였지만 제외·필터 등 옵션이 달라지면 범위를 다시 확인해야 합니다.
양쪽 파일 크기가 같으면 덮어쓰기 예고가 없나요?
+
이번 --checksum 로컬 예제는 같은 크기와 수정 시각이어도 다른 내용을 구분했습니다. 해시 지원과 비교 옵션이 다르면 같은 조건이 아니므로 크기만으로 판단하지 마세요.
목적지 전용 파일을 남기려면 무엇을 선택하나요?
+
copy를 검토하세요. 목적지 전용 파일은 남기지만 같은 경로의 파일은 덮어쓸 수 있습니다. 기존 copy/check 가이드에서 실제 복사와 사본 검사 범위를 확인할 수 있습니다.
dry-run은 아무 파일도 만들지 않나요?
+
대상 원본·목적지 파일을 동기화하지 않습니다. 다만 --combined로 지정한 보고서는 별도로 기록되므로 대상 폴더 밖의 새 보고서 이름을 사용하세요.
이 결과를 클라우드 폴더에도 그대로 적용해도 되나요?
+
시험은 자체 로컬 TXT에 한정됩니다. 공급자별 해시·권한·비용·필터 조건은 별도로 확인해야 하며 미리보기 이후 실제 파일 변경도 다시 고려해야 합니다.
9. 참고 자료
관련 가이드
함께 보면 좋은