rsyncとは
rsyncを用いるとローカル及びネットワーク越しにデータをバックアップすることができます.fmirrorと比べ,動作は軽快で設定も簡単です.
差分ミラーリングも容易でネットワークへの負荷が小さいので,rsyncサーバが用意されている場合には,出来る限りrsyncを用いたミラーリングを行うべきです.
方針
- rsyncのインストール(別ページで解説済み)
- ミラーリング設定が書かれたシェルスクリプトの作成
- cronへのシェルスクリプトの登録
ミラーリング設定が書かれたシェルスクリプトの作成
下は, rsync://mirror.hogehogehoge.net (←架空のサーバです)から cygwinディレクトリ を/home/ftp/.hd05/cygwin ディレクトリにミラーリングするためのシェルスクリプトです.
#!/bin/sh
#mirror target: cygwin
# 2005/07/05 takatama
rsync -avz rsync://mirror.hogehogehoge.net/cygwin /home/ftp/.hd05/cygwin/
2行目,3行目は単なるコメントです.何をするためのスクリプトなのか,すぐに分かるようにしておきましょう.
基本的な構文は
rsync [オプション] [ミラーリング対象] [ミラーリング先]
です.
オプションについての詳細はMediaweb-rsyncコマンドの使い方を参考にするといいでしょう.
今回用いたオプション(a,v,z)について,上記ページから引用しておきます.
a:アーカイブモード。上記のオプションのうち rlptgoD を指定します。ディレクトリ内に含まれる全てのファイル、/ディレクトリを、シンボリックリンク、パーミッション属性、グループ属性、所有者属性、タイムスタンプを保持したまま同期。
v:冗長モード。バックアップ時にバックアップしているファイル名を表示する
z:データーを圧縮して転送する
上記の内容が書かれたシェルスクリプトを適当な名前で保存(今回はcygwin.rsmとして,/etc/rsync_mirroringに保存.サフィックスのrsmはRSync Mirroringから.)し,実行ファイルとして扱えるようにパーミッションを切ります.
chmod 755 /etc/rsync_mirroring/cygwin.rsm
下は, rsync://mirror.hogehogehoge.net (←架空のサーバです)から cygwinディレクトリ を/home/ftp/.hd05/cygwin ディレクトリにミラーリングするためのシェルスクリプトです.
#mirror target: cygwin
# 2005/07/05 takatama
rsync -avz rsync://mirror.hogehogehoge.net/cygwin /home/ftp/.hd05/cygwin/
2行目,3行目は単なるコメントです.何をするためのスクリプトなのか,すぐに分かるようにしておきましょう.
基本的な構文は
です.
オプションについての詳細はMediaweb-rsyncコマンドの使い方を参考にするといいでしょう.
今回用いたオプション(a,v,z)について,上記ページから引用しておきます.
a:アーカイブモード。上記のオプションのうち rlptgoD を指定します。ディレクトリ内に含まれる全てのファイル、/ディレクトリを、シンボリックリンク、パーミッション属性、グループ属性、所有者属性、タイムスタンプを保持したまま同期。
v:冗長モード。バックアップ時にバックアップしているファイル名を表示する
z:データーを圧縮して転送する
上記の内容が書かれたシェルスクリプトを適当な名前で保存(今回はcygwin.rsmとして,/etc/rsync_mirroringに保存.サフィックスのrsmはRSync Mirroringから.)し,実行ファイルとして扱えるようにパーミッションを切ります.
cronへのシェルスクリプトの登録
前節で作成したシェルスクリプトを cron に登録し,定期的にミラーリングを行うようにします.
crontab -e
によってcronの編集エディタを立ち上げ,
12 2 * * 3 /etc/rsync_mirroring/cygwin.rsm
という行を追加すればOKです.
crontabの書式は,左から順に
分 時 日 月 曜日 [実行コマンド]
となっています.上の例では,毎週水曜日の午前2時12分にシェルスクリプトが実行されます.
前節で作成したシェルスクリプトを cron に登録し,定期的にミラーリングを行うようにします.
によってcronの編集エディタを立ち上げ,
という行を追加すればOKです.
crontabの書式は,左から順に
となっています.上の例では,毎週水曜日の午前2時12分にシェルスクリプトが実行されます.