rsync

  • rcpを非常に強力にしたファイル同期コマンド
  • sshが通るレンタルサーバのバックアップなどに便利(差分バックアップ)
  • MacOS Xは、標準で入っているので導入する必要なし

導入手順

1.ダウンロード http://rsync.samba.org/

 バージョンが古いが、日本語サイトも http://www.infoscience.co.jp/technical/rsync/

  rsync-2.4.6.tar.gz-> /usr/local/src

2.make and install

 # cd /usr/local/src
 # tar zxvf rsync-2.4.6.tar.gz
 # cd rsync-2.4.6
 # ./configure
 # make 
 # make install

実行方法

 % rsync [OPTION]... SRC [SRC]... DEST 
オプションの概要
-v, --verbose            転送情報を詳しく表示
-q, --quiet              転送情報を表示しない
-c, --checksum           常にチェックサムを行う
-a, --archive            アーカイブモード(-rlptgoD オプションと同義)
-r, --recursive          ディレクトリで再帰的に実行する
-R, --relative           相対パス名を使う
-b, --backup             バックアップを作成する (デフォルトで ~ が付く)
    --suffix=SUFFIX      バックアップのサフィックスを変更
-u, --update             アップデートのみ許可 (上書き禁止)
-l, --links              ソフトリンクを維持する
-L, --copy-links         ファイルのようにソフトリンクを扱う
    --copy-unsafe-links  送信側ツリー外のリンクをコピー
    --safe-links         受信側ツリー外のリンクを無視
-H, --hard-links         ハードリンクを維持する
-p, --perms              パーミッションを維持する
-o, --owner              オーナーを維持する (root のみ)
-g, --group              グループを維持する
-D, --devices            デバイスを維持する (root のみ)
-t, --times              タイムスタンプを維持する
-S, --sparse             密度の低いファイルを効率的に扱う
-n, --dry-run            実行時の動作だけを表示
-W, --whole-file         rsync アルゴリズムを使わない
-x, --one-file-system    再帰的に実行された時にファイルシステムの境界を横断しない
-B, --block-size=SIZE    rsync アルゴリズムのチェックサムブロックサイズの制御(default 700)
-e, --rsh=COMMAND        rsh の代替を指定
    --rsync-path=PATH    リモートのマシーンで rsync のコピーへのパスを指定
-C, --cvs-exclude        システム間で転送したくない広範囲のファイルを除外(CVSの方法と同じ)
    --delete             送信側にないファイルを削除
    --delete-excluded    受信側にある exclud ファイルも削除
    --partial            転送途中のファイルを保存します
    --force              ディレクトリが空でなくても削除
    --numeric-ids        ユーザとグループの id 番号を転送して、転送後にマッピング
    --timeout=TIME       IO タイムアウトを設定(秒)
-I, --ignore-times       タイムスタンプとファイルサイズのチェックをしない
    --size-only          タイムスタンプのチェックをしないで、ファイルサイズのチェックだけをする
-T  --temp-dir=DIR       tmp ファイルのディレクトリを指定
    --compare-dest=DIR   受信側のファイルと比較するための追加ディレクトリ
-z, --compress           受信ファイルを圧縮compress file data
    --exclude=PATTERN    パターン一致するファイルを除外
    --exclude-from=FILE  ファイルに記述されたパターンと一致するファイルを除外
    --include=PATTERN    パターン一致するファイルを除外しない
    --include-from=FILE  ファイルに記述されたパターンと一致するファイルを除外しない
    --version            rsync のバージョンを表示する
    --daemon             rsync をデーモンとして走らせる
    --config=FILE        別の rsyncd.conf ファイルを指定
    --port=PORT          別の rsync ポート番号を指定
    --stats              rsync アルゴリズムの転送効率を表示
    --progress           転送中の情報を表示
    --log-format=FORMAT  ログフォーマットを指定
    --password-file=FILE ファイルからパスワードを得る
-h, --help               このヘルプを表示する

[実行例]

 ローカルの/home/oracle/TESTディレクトリ配下にあるファイルをマシンg32b21の

 /home/oracle/TESTディレクトリ配下に sshを利用して転送する場合。

 % rsync -auv --delete -e ssh /home/oracle/TEST/ g32b21:/home/oracle/TEST/
レンタルサーバxxx.example.jpの/home/aaaディレクトリ配下のファイルを
ローカルのMacにバックアップする。
 % rsync -auv --delete -e ssh username@xxx.example.jp:/home/aaa/ /Users/mino/aaa/

UNIX


トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2008-12-11 (木) 21:21:21 (3654d)