rsyncは、コピー元とコピー先を比べ、変更が必要なファイルを選んでコピーできるコマンドです。PC内の別の場所だけでなく、遠隔のサーバーとの間でも使えます。
rsyncの役割
遠隔のサーバーとコピーするときは、SSHを安全な通信経路として利用できます。すべてを毎回送り直すのではなく、コピー元とコピー先を調べて、更新が必要なものを選べることが特徴です。
標準では、主にファイルの大きさと更新された時刻を使って、コピーが必要か判断します。中身から作った確認用の値で判断する方法もあり、この値をチェックサムと呼びます。--checksumを指定するとこの方法へ変更できますが、両側のファイルを読み取るため処理は重くなります。
転送前後の確認
実際にはファイルを変更せず、どのような処理になるかだけを事前に確認できます。この試行機能がdry runで、--dry-runまたは-nを指定します。変更対象を詳しく表示する--itemize-changes(-i)と組み合わせると、どのファイルが対象になるかを確認しやすくなります。
rsyncは通常、転送したファイルを内部のチェックサムで検証しますが、転送後の配置全体を独立して確認したい場合は、ファイル一覧やSHA-256などを別に照合できます。転送と照合の一例は公開作業の記録にまとめています。
使ったアプリ
- Chrono Sculpture — 公開用ファイルの転送