Backup of UNIX/コマンド/クライアント/rsync(No. 1)



rsync コマンドはファイルのバックアップを取るのに利用します。 通常の cp とは違いバックアップ元とバックアップ先ファイルの差分だけを送信することで高速なバックアップを行えます。 r が冠するように rlogin や rcp などの r* 系コマンドの1つですが、ローカルでのバックアップコマンドとしても利用できます。

Table of Contents

ローカルで使用する Edit

rsync -auv --delete --exclude ".svn" [src_dir] [dest_dir]

のように使用します。

ファイルの属性を保存し(-a)、目的地側に新しいファイルがある場合は上書きしない(-u)ようにし、進歩状況の表示(-v)をし、 バックアップ元にないファイルはバックアップ先から削除します(--delete)し、--exclude で指定した文字列にマッチするファイル、ディレクトリを除いて、バックアップを取ります。

注意が必要なのが

rsync -auv --delete --exclude ".svn" [src_dir]/ [dest_dir]

rsync -auv --delete --exclude ".svn" [src_dir] [dest_dir]

の違いで、前者は

[src_dir]/
[src_dir]/file1
[src_dir]/file2

とファイルがある場合

[dest_dir]/
[dest_dir]/file1
[dest_dir]/file2

のようにバックアップを取るのに対し、後者は

[dest_dir]/
[dest_dir]/[src_dir]
[dest_dir]/[src_dir]/file1
[dest_dir]/[src_dir]/file2

のようにバックアップをとる点です。--delete をつけていると、この少しの違いが大きな違いになってしまうことがあります。


xrea