rclone은 2014년 첫 공개 이후 지금까지 활발히 개발되고 있는 CLI 도구로, 최신 버전 기준으로 Google Drive, AWS S3, Backblaze B2를 포함해 40개가 넘는 클라우드 스토리지 제공사를 하나의 명령어 체계로 다룰 수 있게 해줍니다. rsync처럼 로컬 파일을 동기화하는 감각 그대로 클라우드 스토리지를 다룰 수 있어서, 로컬 백업을 오프사이트에 복제하려는 홈랩 사용자들이 특히 많이 찾는 도구인데, 그렇다면 rclone으로 클라우드 스토리지 동기화와 백업을 어떻게 할 수 있을까요?
rclone이란 무엇인가
rclone은 로컬 파일시스템과 클라우드 스토리지, 혹은 서로 다른 클라우드 스토리지 사이의 파일을 동기화하는 오픈소스 CLI 도구예요. “클라우드용 rsync”라는 별명 그대로 copy, sync, move 같은 익숙한 명령 체계를 그대로 쓰면서, 목적지만 로컬 경로 대신 클라우드 제공사의 remote로 바꿔주면 동작해요. Google Drive, Dropbox, OneDrive 같은 일반 소비자용 클라우드부터 AWS S3, Backblaze B2 같은 오브젝트 스토리지, 그리고 MinIO처럼 직접 운영하는 S3 호환 서버까지 모두 같은 방식으로 다룰 수 있다는 게 rclone의 가장 큰 강점이에요.
백업 전략에서 rclone의 위치
결론부터 말하면 rclone은 백업 도구가 아니라 동기화·전송 도구예요. Restic이나 Duplicati 같은 도구가 증분 백업, 버전 관리, 중복 제거를 담당한다면, rclone은 그렇게 만들어진 백업 결과물을 로컬 밖으로 안전하게 내보내는 마지막 다리 역할을 해요. 3-2-1 백업 원칙(원본 포함 3개의 복사본, 2개의 다른 매체, 1개의 오프사이트)을 실현하려면 로컬 NAS에 백업을 만든 것만으로는 부족하고, 화재나 도난 같은 물리적 사고에도 살아남을 수 있는 오프사이트 사본이 필요한데, rclone이 바로 이 오프사이트 레그를 담당해요.
remote 설정과 기본 동기화
rclone을 설치한 뒤 가장 먼저 할 일은 rclone config 명령으로 클라우드 제공사별 remote를 등록하는 거예요. 대화형 마법사가 API 키나 OAuth 인증을 안내해주기 때문에 복잡한 설정 파일을 직접 작성할 필요는 없어요.
# 대화형으로 remote 설정 (Google Drive, S3 등 선택)
rclone config
# 로컬 백업 폴더를 클라우드로 동기화 (원본 기준으로 목적지를 맞춤)
rclone sync /mnt/backup remote:homelab-backup --progress
# 실제 실행 전에 어떤 변경이 일어날지 미리 확인
rclone sync /mnt/backup remote:homelab-backup --dry-run
sync는 목적지를 원본과 완전히 동일하게 맞추기 때문에 원본에서 삭제된 파일은 목적지에서도 삭제돼요. 삭제 위험 없이 파일을 추가만 하고 싶다면 copy 명령을 쓰는 게 안전하고, 처음 실행할 때는 --dry-run 옵션으로 결과를 먼저 확인하는 습관을 들이는 게 좋아요.
crypt remote로 업로드 전 암호화하기
crypt remote는 파일을 클라우드에 업로드하기 전에 클라이언트 단에서 먼저 암호화하는 rclone의 기능이에요. 일반 remote 위에 crypt remote를 한 겹 더 씌우는 방식으로 동작하기 때문에, 클라우드 제공사 서버에는 암호화된 데이터만 저장되고 파일명까지 암호화 옵션을 켜두면 폴더 구조나 파일 이름조차 노출되지 않아요. 개인 사진이나 문서처럼 민감한 데이터를 오프사이트 백업으로 올릴 때는 crypt remote를 반드시 함께 설정하는 걸 추천해요. 클라우드 업체의 서버가 해킹당하거나 계정이 유출되더라도, 복호화 키 없이는 내용을 알아볼 방법이 없다는 게 핵심이에요.
cron으로 자동 백업 예약하기
rclone 명령을 매번 수동으로 실행하는 대신 cron에 등록해두면 정해진 시간마다 자동으로 오프사이트 동기화가 이뤄져요. 아래처럼 crontab에 한 줄만 추가하면 매일 새벽 3시에 로컬 백업 폴더가 클라우드로 복제돼요.
# crontab -e 로 편집
0 3 * * * /usr/bin/rclone sync /mnt/backup remote:homelab-backup --log-file=/var/log/rclone.log
로그 파일을 함께 남겨두면 Uptime Kuma 같은 모니터링 도구와 연계해서 백업이 정상적으로 끝났는지 주기적으로 확인할 수도 있어요.
결론
rclone은 40개가 넘는 클라우드 제공사를 하나의 명령어 체계로 다루면서, 로컬 백업을 오프사이트로 안전하게 복제해주는 CLI 도구예요. 단독으로는 백업 도구가 아니지만, Restic이나 Duplicati로 만든 로컬 백업의 마지막 다리 역할을 맡기면 3-2-1 백업 원칙을 홈랩 환경에서도 실현할 수 있어요. crypt remote로 암호화까지 챙기고 cron으로 자동화해두면, 화재나 도난 같은 최악의 상황에서도 데이터를 지킬 수 있는 안전망이 완성돼요.
자주 묻는 질문
Q1. rclone은 어떤 클라우드 서비스를 지원하나요?
네, rclone은 Google Drive, AWS S3, Backblaze B2, Dropbox를 포함해 40개가 넘는 클라우드 스토리지 제공사를 지원하고, MinIO 같은 S3 호환 스토리지도 동일한 방식으로 다룰 수 있어요.
Q2. rclone만 있으면 다른 백업 도구는 필요 없나요?
아니요, rclone은 파일 동기화·전송에 특화된 도구라서 증분 백업이나 버전 관리 같은 기능은 없어요. Restic이나 Duplicati로 로컬 백업을 만든 뒤 그 결과물을 rclone으로 오프사이트에 복제하는 조합이 일반적이에요.
Q3. 업로드하는 파일을 클라우드 업체가 볼 수 없게 할 수 있나요?
네, rclone의 crypt remote를 사용하면 클라이언트 단에서 파일명과 내용을 모두 암호화한 뒤 업로드해서 클라우드 제공사조차 원본 내용을 알 수 없어요.
Q4. sync 명령을 잘못 쓰면 파일이 삭제될 수도 있나요?
네, sync는 목적지를 원본과 완전히 동일하게 맞추는 명령이라서 원본에서 지운 파일은 목적지에서도 삭제돼요. 삭제가 걱정된다면 copy 명령을 쓰거나 먼저 --dry-run 옵션으로 결과를 미리 확인해야 해요.
Q5. 정기 백업은 어떻게 예약하나요?
리눅스 환경에서는 cron이나 systemd 타이머에 rclone 명령을 등록해서 매일 또는 매주 자동으로 동기화가 실행되도록 예약할 수 있어요.
Q6. 무료로 계속 쓸 수 있나요?
네, rclone 자체는 오픈소스 무료 소프트웨어예요. 다만 연결하는 클라우드 스토리지 서비스의 요금제나 용량 제한은 별도로 확인해야 해요.
관련 글


