Developers:: Morikawa Yasuhiro
Version:: 2005/06/14 20:04:41
Overview
ローカルのファイルを rsync で他のサーバ (ローカルでも良い) へ転送する
ためのクラス。初期化 (RsyncBackup.new)の
際に転送元と転送先の「基」と なるディレクトリとホストを指定する。そのまま
RsyncBackup.run メソッド
を実行すればそのディレクトリをそのまま rsync するが、RsyncBackup.partly の引数
*dir にディレクトリ名を渡すことで、その部分だけを rsync すること
が可能である。
その他、様々なメソッドを利用することで、rsync に有効なオプションの
指定が可能である。
ソース一番下の Main Routine の部分にサンプルが用意してある。
Usage
% rsync_backup.rb [options] [dir [dir ...]]
Options
--n : for test (not exec "rsync")
--check : for test (exec "rsync" with "-n" option)
--delete : add "--delete" option
--nodelete : remove "--delete" option
--logauto : log to appropriate logfile
--log <logfile> : output rsync command messages to <logfile>
Error Handling
Known Bugs
Future Plans
- 日本語ファイル名を rsync のパスとして用いる場合には未対応
- パスワードは毎回入力するようになっている。RsyncBackup.partly
で複数のディレクトリ を指定する場合には面倒かもしれない。
Note
サンプルとして実行部分もあるが、基本的にはライブラリとしての利用を
想定している。
History
- 2005/06/14 20:04:41
- 2005/06/14 15:39:56
- 2005/03/21 18:17:29
- 2005/03/21 02:11:26
- オブジェクトが String で、且つ空白でない事を調べるための
RsyncBackup.str_and_notspace? メソッド作成
- オブジェクトが Array で、且つゼロ配列でない事を調べるための
RsyncBackup.array_and_notzero? メソッド作成
- RsyncBackup.new
メソッドで、srcdir または dstdir が String でないか、
空文字の場合のエラーの種類を ArgumentError にするようにした。
- RsyncBackup.new
メソッドで、srchost と dsthost の両方が有効で
ある場合にはエラーを返すようにした。(rsync ではリモートから
リモートへの転送をサポートしていないので)
- RsyncBackup.excludeopt
メソッドを上記の RsyncBackup.str_and_notspace? メソッドと
RsyncBackup.array_and_notzero? を利用して簡単に記載。
- RsyncBackup.partly
メソッドを改良し、リモート→ローカル も
ローカル→リモートの際も両方ともまっとうに動作するようにした。
- 2005/03/21 01:23:23
- RsyncBackup.excludeopt
メソッドをバグフィックスし、まともに
動くようにした。(カレントディレクトリは関係なく、rsync の src
が関係あったので)。 その際、操作の大半を partly メソッドに移行。
- 2005/03/20 00:27:10
- 2005/03/13 03:23:56
- 2005/03/12 12:24:35
- 2005/03/07 03:56:35
- 2005/03/06 Morikawa Create
Required files
pathname
getoptlong