somemo programming etc.

プログラマ、雑記、プログラミング関係はLinkから、数式はこっちでまとめていることが多い

【rsync】ファイル同期(ローカル)【Linux】

今回は、ファイルの同期を行える「rsync」についてのメモ。

異なるサーバ間でもファイルの同期を行えるますが、今回はローカルです。

 

サーバ間で必要な理由

アップロードされたファイルを複数のWEBサーバで共有しなくてはならないからである。 WEBアプリには、ファイルアップロード機能があり、WEBサーバの台数は3台ある。 ファイルをアップロードする機能は、特定のサーバで行うように設定し、 このサーバにアップロードされたファイルを「rsnyc」を用いて別のサーバと同期させることが今回の目的である。

 

もうすでにインストールされていた・・・ 以下、バージョン情報です。

rsync --version rsync version 2.6.8 protocol version 29

Copyright (C) 1996-2006 by Andrew Tridgell, Wayne Davison, and others. <http://rsync.samba.org/> Capabilities: 64-bit files, socketpairs, hard links, ACLs, xattrs, symlinks, batchfiles, inplace, IPv6, 64-bit system inums, 64-bit internal inums rsync comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the GNU General Public Licence for details.

 

使い方

下記は、

ローカルの /home/sfband を /backup に

権限等のファイルの属性を保持したまま(-a)

詳細情報を表示しながら(-v)

tmpを除いて(--exclude="tmp")

転送先にしかないファイルは削除し(--delete)

同期(コピー)する

rsync -av --exclude="tmp" --delete /home/sfband/ /backup

 

実行結果

 

building file list ... done created directory /backup ./ .ICEauthority

ファイル名~ ディレクトリ名~など

sent 316577 bytes received 2008 bytes 637170.00 bytes/sec total size is 309046 speedup is 0.97

/backupディレクトリが無い場合、自動で作成されました。

 

参考

ローカル実行:http://www.server-world.info/query?p=command&q=rsync

オプション詳細+ssh(パス認証+公開鍵):http://sakura.off-soft.net/centos/rsync-ssh.html

性能がいい3.0のインストールについて:http://d.hatena.ne.jp/mizincogrammer/20110325/1301038754

RSA認証の設定+cron実行について:http://pinoki.la.coocan.jp/wiki/?Linux%2FInstall%2Frsync%A4%CE%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB