&tag(rsync); *目次 [#e4a94a93] #contents *関連ページ [#y47cf913] *参考情報 [#kc801135] -[[Command Technica:はじめてrsyncを使う方が知っておきたい6つのルール (1/2) - ITmedia エンタープライズ:http://www.itmedia.co.jp/enterprise/articles/0804/21/news013.html]] -[[地雷だらけのrsyncを理解する。 - こせきの技術日記:http://koseki.hatenablog.com/entry/20090424/rsync]] *概要 [#m7e876a5] -UNIXの定番ファイル同期/転送コマンド。 *基本的な使い方 [#l8e27d2e] **コピー元からコピー先へ同期 [#me27ed0a] -基本オプション"-av"を使う。 rsync -av ~/dir1/ /media/disk/backup/ ※コピー先ディレクトリがなければ作られる。 **コピー元からコピー先へ同期(削除もする) [#me27ed0a] -基本オプション"-av"と"--delete"を同時指定 rsync -av --delete ~/dir1/ /media/disk/backup/ **実用基本形 [#df1fca04] -以上を踏まえリモートフォルダをローカルにバックアップコピーする場合の基本形。wwwフォルダはbackupの中に作られない(copy from_dir/* to_dirの*省略と考えるとわかりやすい)。zは圧縮オプション。 rsync -az --delete -e ssh demohost:/home/www/ /home/backup *Tips [#g8abac7f] **コピー元のスラッシュの取り扱い [#b29d89e4] -例えば以下のような構造のフォルダがある場合を考える。 #pre{{ . ├── a │ └── a.txt ├── b │ └── b.txt └── c }} -aフォルダをスラッシュ付きで、bフォルダをスラッシュなしでコピー rsync -av a/ c rsync -av b c -すると次のようになる。転送元フォルダの最後にスラッシュがあるとそのフォルダ自体はコピー先に作られない。 #pre{{ . ├── a │ └── a.txt ├── b │ └── b.txt └── c ├── a.txt └── b └── b.txt }}