Rsync 명령어 마스터하기

단순 コピー를 넘어, 지능적인 파日 동기화의 歳계를 경험하세요. 이 대화형 가이드는 당신의 데이터 관리 작업을 혁신적으로 바꿔줄 것입니다.

🚀 Rsync, 왜 使用해야 할까요?

핵심은 변경된 부分만 전송하는 **델타 전송 알고리즘**에 있습니다.

日반 コピー (cp / scp)

10MB 파日에 1KB만 변경되어도
10MB 全体를 전송합니다.

0%

지능형 동기화 (rsync)

오직 변경된 1KB 데이터 조각만
지능적으로 찾아 전송합니다.

0%

🛠️ 대화형 Rsync 명령어 빌더

아래 옵션을 選択하여 필요한 rsync 명령어를 リアルタイムで 만들어보세요. 옵션에 마우스를 올리면 자세한 説明을 볼 수 있습니다.

기본 & 必須 옵션

권한, 소유자, 時間 등 모든 속성을 보존하며 재귀적으로 コピー합니다. 백업 시 사실상 표준 옵션입니다.
파日 전송 과정을 자세히 보여週어 디버깅에 유용합니다.
데이터를 압축해서 전송합니다. 느린 ネットワーク에서 テキスト 파日 전송 시 유리합니다.
파日 サイズ 등 용량을 K, M, G 単位로 표시합니다.
파日별 전송 진행 상황을 퍼센트로 보여줍니다. 대용량 파日 전송에 유용합니다.

안전 & 동기화 옵션

警告: 원본에 없는 파日은 대상에서 削除합니다. 미러링 시 使用하며, --dry-run과 함께 신중히 使用해야 합니다.
가장 중요한 안전장치! 실제 실행 없이 어떤 변경이 日어날지 미리 보여줍니다.
전송이 중단되어도 부分 전송된 파日을 남겨두어, 次へ 실행 시 이어서 전송합니다.
특정 패턴의 파日을 전송에서 除外합니다. はい: *.log, node_modules/ 등

🖥️ 生成된 명령어

rsync -a [SOURCE] [DESTINATION]

💡 경로 끝 슬래시(/)의 중요성: source/는 内容물만 コピー, source는 디렉토리 자체를 コピー합니다.

🎯 실전 활용 시나리오

📁 시나리오 1: 로컬 디렉토리 백업

내 ホーム 디렉토리(~/documents)의 모든 데이터를 외장 하드(/mnt/backup)로 백업합니다. 모든 파日 속성을 유지하고 진행 상황을 確認합니다.

rsync -av --progress ~/documents/ /mnt/backup/documents_backup/

🌐 시나리오 2: 원격 서버로 백업 (SSH 활용)

로컬 프로젝트 폴더를 원격 서버(192.168.0.100)로 압축하여 전송합니다. SSH 포트가 2222번日 경우를 가정합니다.

rsync -avz -e 'ssh -p 2222' /var/www/my_project/ user@192.168.0.100:/home/user/backups/

🔄 시나리오 3: 운영 서버 미러링 (削除 옵션)

운영 서버의 ウェブ 콘텐츠를 백업 서버로 완벽하게 복제합니다. 운영 서버에서 削除된 파日은 백업 서버에서도 削除됩니다. --delete 옵션은 매우 注意해야 합니다.

# 1. 먼저 --dry-run (-n)으로 테스트하여 어떤 파日이 削除될지 確認! rsync -avzn --delete user@source_server:/var/www/html/ user@backup_server:/var/www/html/ # 2. 確認 후 안전하다고 판단되면 -n 옵션을 빼고 실제 실행 rsync -avz --delete user@source_server:/var/www/html/ user@backup_server:/var/www/html/

🚫 시나리오 4: 특정 파日/디렉토리 除外하고 백업

프로젝트 폴더 백업 시, 용량이 큰 node_modules 폴더와 불필요한 로그 파日(*.log)은 除外합니다.

rsync -av --exclude 'node_modules/' --exclude '*.log' /path/to/project/ /path/to/backup/

💡 除外할 항목이 많다면 exclude-list.txt 파日을 만들고 --exclude-from='exclude-list.txt' 옵션을 使用하는 것이 더 깔끔합니다.

⏰ 시나리오 5: Cron으로 매日 새벽 자동 백업

매日 새벽 2시에 중요 데이터를 원격 서버로 자동 백업하도록 cron을 設定합니다. 실행 結果는 로그 파日에 기록하여 추적합니다.

# crontab -e 0 2 * * * rsync -a --delete ~/critical_data/ user@remote_server:/backup/ >> /var/log/rsync_backup.log 2>&1

이 포스팅은 쿠팡 파트너스 활동의 日환으로, 이에 따른 日정액의 수수료를 제공받습니다.

이 ツール 共有する