1. 개요
다양한 파일 복사 및 동기화 도구들의 목적, 비교 , 활용 등에 대한 정리한 문서입니다.
2. 사용 목적 분류
사용 목적 |
설명 |
추천 도구 |
정기 백업 |
스케줄 기반, 증분 또는 전체 복사 |
Robocopy, FastCopy, rsync |
실시간 동기화 |
이벤트 기반 자동 싱크 |
FreeFileSync (RealTimeSync) |
대용량 데이터 이동 |
SSD/NAS/서버 간 수백 GB 이상 데이터 이동 |
FastCopy, Robocopy |
클라우드 백업 |
Azure, AWS 등으로 파일 업로드 |
AzCopy, rclone |
시각적 비교/병합 |
코드, 문서 변경점 수동 검토 또는 병합 |
Beyond Compare, WinMerge |
설치/배포 스크립트 |
배포 자동화, 프로그램 설치 후 파일 구성 |
Xcopy |
3. 각 도구별 특징 및 활용 사례
1. Robocopy
- 특징: 고급 파일 복사, 재시도, 로그, ACL 복사, 멀티스레드
- 활용 사례:
- 사내 파일 서버 정기 백업
- NAS ↔ Windows 간 파일 마이그레이션
- 이관 로그 기반 감사 추적
- 최적 사용 케이스:
- 대용량 폴더 구조 백업
Robocopy /MIR /Z /R:3 /W:10 source destination
2. Xcopy
- 특징: 단순 복사, 날짜 조건 복사, 속성 유지
- 활용 사례:
- 설치 프로그램 내 자동 복사
- USB → 로컬 폴더 복사 자동화
- 최적 사용 케이스:
- 간단한 폴더 구조 구성
xcopy /E /H /Y source destination
3. FastCopy
- 특징: 고속 복사, 체크섬, CLI+GUI, SSD 최적화
- 활용 사례:
- 미디어/영상 대용량 프로젝트 이동
- 대규모 로그 파일 백업
- 최적 사용 케이스:
- 수백 GB 이상 고속 복사 필요 시
FastCopy.exe /cmd=diff /auto_close /force_close source /to=dest
4. FreeFileSync (RealTimeSync 포함)
- 특징: 실시간 동기화, GUI, 양방향/미러 지원
- 활용 사례:
- 개발 디렉터리 실시간 백업
- 외장 디스크 연결 자동 백업
- 최적 사용 케이스:
- 자동 백업 시스템 구축
.ffs_batch
파일 + Task Scheduler 활용
5. Beyond Compare
- 특징: 시각적 비교, 병합, 텍스트/바이너리 지원
- 활용 사례:
- QA팀의 소스 비교 및 배포 전 점검
- 수작업 병합 및 변경 검토
- 최적 사용 케이스:
6. WinMerge
- 특징: 오픈소스, 직관적 GUI, 텍스트 비교
- 활용 사례:
- 정책 문서 변경 추적
- 코드/문서 비교 및 라인 병합
- 최적 사용 케이스:
7. rsync
- 특징: SSH 지원, 델타 복사, 고속 전송
- 활용 사례:
- 서버 간 주기 백업 자동화
- 원격 디렉터리 간 싱크
- 최적 사용 케이스:
rsync -avz -e ssh /source user@server:/dest
- 크로스플랫폼 정기 백업
8. AzCopy
- 특징: Azure Storage 전송 최적화, CLI 기반
- 활용 사례:
- 클라우드 전송 자동화 (백업, 로그 수집 등)
- DR 백업 → Azure Blob 복제
- 최적 사용 케이스:
azcopy copy './local' 'https://storage.../container?sas_token' --recursive
4. 동기화 관점 체크리스트 ✅
체크포인트 |
설명 |
동기화 방향 |
단방향 vs 양방향 여부 명확히 구분 |
변경 감지 기준 |
날짜, 해시, 크기 등을 기준으로 선택 |
삭제 정책 |
소스 삭제 시 대상 삭제 여부 설정 (/MIR , --delete ) |
충돌 처리 방식 |
덮어쓰기, 병합, 경고 등 정책 필요 |
무결성 검증 |
체크섬/로그 사용 여부 결정 |
스케줄링 또는 이벤트 |
수동 실행 vs 주기 실행 vs 실시간 감지 |
보안 고려 |
SSH, SAS, 키 인증 등 암호화 여부 |
5. 동기화 검증 방안 및 체크 방법
✅ 검증 기준 및 방법
검증 항목 |
설명 |
파일 수 비교 |
소스와 대상의 파일 수가 일치하는지 확인 (dir /s , `ls -R |
파일 크기 비교 |
각 파일의 크기가 동일한지 확인 (GUI 툴 또는 cmp , diff , fc 등 활용) |
체크섬 비교 |
md5sum , certutil , fciv , hashdeep 등을 이용한 무결성 확인 |
로그 분석 |
복사 로그의 오류, 누락 파일, 실패 항목 확인 (Robocopy 로그, FastCopy 로그 등) |
시각적 검토 |
Beyond Compare, WinMerge 등으로 변경점 시각화 검토 |
테스트 복제 |
실제 복사 전 사전 테스트를 통해 동기화 조건 및 예외사항 검증 |
6. 도구별 스크립트 샘플 및 옵션 설명
Robocopy
robocopy "C:\source" "D:\backup" /MIR /Z /R:3 /W:5 /LOG:C:\logs\backup.log
/MIR
: 소스와 대상 경로를 완전히 미러링 (삭제 포함)
/Z
: 중단된 복사 재개 지원
/R
: 실패 시 재시도 횟수
/W
: 재시도 간 대기 시간
/LOG
: 로그 파일 기록
FastCopy
FastCopy.exe /cmd=diff /verify /auto_close /force_close /log="log.txt" /to="D:\backup" "C:\source"
/cmd=diff
: 변경된 파일만 복사
/verify
: 복사 후 무결성 검증
/auto_close
: 작업 완료 후 자동 종료
/force_close
: 메시지 없이 종료
/log
: 로그 파일 지정
rsync
rsync -avz --delete -e ssh /home/user/data user@192.168.0.10:/backup/data
-a
: 권한 포함 전체 복사
-v
: 상세 로그 출력
-z
: 압축 전송
--delete
: 목적지에서 누락된 항목 삭제
-e ssh
: SSH 전송 사용
AzCopy
azcopy copy "C:/logs" "https://storage.blob.core.windows.net/container?sas_token" --recursive --overwrite=prompt
copy
: 복사 명령 실행
--recursive
: 하위 디렉터리 포함
--overwrite=prompt
: 덮어쓰기 여부 확인 후 진행
FreeFileSync (RealTimeSync)
"C:\Program Files\FreeFileSync\RealTimeSync.exe" "C:\sync\auto_backup.ffs_real"
.ffs_real
: 실시간 동기화 감지 및 자동 실행 설정 파일
7. 도구 비교 요약표
도구 |
GUI |
CLI |
실시간 |
대용량 |
클라우드 |
추천 용도 |
Robocopy |
❌ |
✅ |
❌ |
✅ |
❌ |
백업, 정기 복제 |
Xcopy |
❌ |
✅ |
❌ |
❌ |
❌ |
간단한 복사 |
FastCopy |
✅ |
✅ |
❌ |
✅ |
❌ |
고속 복사, 무결성 검증 |
FreeFileSync |
✅ |
✅ |
✅ |
✅ |
❌ |
실시간, 자동 백업 |
Beyond Compare |
✅ |
❌ |
❌ |
❌ |
❌ |
시각 비교, 수동 병합 |
WinMerge |
✅ |
❌ |
❌ |
❌ |
❌ |
텍스트 비교 |
rsync |
❌ |
✅ |
❌ |
✅ |
가능 |
서버 간 복제 |
AzCopy |
❌ |
✅ |
❌ |
✅ |
✅ |
Azure 전송 자동화 |
8. 참고 링크