No.071圧縮と転送
rsync
アールシンク・差分同期
差分転送を行う同期コマンドです。属性保持、削除反映、除外指定、試行実行ができ、実務での出番が非常に多いです。
答えよく使う形
注意危険度は中程度です。
$ mkdir -p src dest
printf "hellon" > src/a.txt
rsync -av src/ dest/
sending incremental file list a.txt
$ rsync -avn --delete src/ dest/
sending incremental file list (no changes made)
$ rsync -av src/ dest/
練習用の部屋です。何を打っても本物は変わりません。本物の Linux で続ける →
覚える順番の中でLPIC-1・93 駅め / 106
どんなコマンド?
バックアップ、配布、デプロイ、遠隔保守、差分コピー、途中失敗後の再実行を安全に行いたい時に使います。
rsyncは、送信元と送信先の差分を見ながら、必要な部分だけを効率よくコピーするコマンドです。単純なcpやscpに比べて、再実行しやすく、大量データでも無駄な転送を抑えやすい点が大きな利点です。
実務では、バックアップ、デプロイ、ログ収集、データミラーリング、保守時の避難コピーなど幅広く使われます。-aで属性をなるべく保ち、-nで試行実行し、--deleteで送信元にないものを消す、といった組み合わせが典型です。
ただし、末尾スラッシュの有無で「ディレクトリそのものをコピーするのか、中身だけをコピーするのか」が変わる点、--deleteで受信先の不要ファイルを消す点は必ず理解してから使う必要があります。
書き方とオプション
組み立ててみるオプションを押すと、下の1行に足されます。もう一度押すと外れます。
$ rsync
使用例と実行結果
行を押すとコピーできます。
sending incremental file list a.txt
sending incremental file list (no changes made)
まず安全に試す
3分ミッション
手を動かすと覚えやすくなります。できたものに印を付けてください(この端末に残ります)。
0 / 2
つまずいたとき
思っていた場所と違う階層へコピーされた
原因送信元パス末尾のスラッシュ有無で、ディレクトリ自体を作るか中身だけを入れるかが変わりました。
こうするsrcとsrc/の違いを明確にし、試行実行で確認します。
同期後に送信先のファイルが消えた
原因--deleteで送信元にない項目を削除しました。
こうする--deleteは-nで結果確認してから使います。
終わったときの数(戻り値)
$ echo $?
- 0正常終了。同期処理に成功しました。
- >0対象不存在、通信失敗、権限不足、除外設定不整合などで処理できませんでした。
気をつけることと入れ方
危険度は中程度です。末尾スラッシュの有無、--delete、除外設定の不足は大事故につながります。まず-nで計画を確認してください。
環境による違い
rsyncは専用プロトコルでもSSH経由でも動作します。バージョン差で既定暗号やチェックサムの挙動が変わることがあるため、異なる環境間ではオプション互換性も確認してください。
確かめた環境2026-04-09 に確認
よくある質問
cpやscpでは駄目ですか。
単発コピーなら十分なこともありますが、差分同期、再実行、削除反映、属性保持まで考えるならrsyncが非常に強力です。
最初に必ず付けたい安全策は何ですか。
まずは-nで試行実行し、何がコピー、更新、削除されるのかを確認することです。
資格試験では
- LinuC レベル1大事1.02.2 基本的なファイル管理の実行
- LPIC-1大事103.3 Perform basic file management
- LinuC レベル2運用自動化と実践的な同期運用上位レベルでは、差分転送、リモート同期、バックアップ運用の理解が実務的な重要性を持ちます。
- LPIC-2実運用でのデータ同期と保守LPIC-2相当の運用では、差分同期や安全なリモートコピーを理解しておくと実務で役立ちます。
- 共通基礎大事Linuxコマンド基礎
rsync を最後まで読みました。
Linux コマンド辞典に戻る98 / 144