WEBサーバ構築:サーバ間で高速・安全にファイルを同期バックアップする
前回、unisonをいろいろ試して見ましたが、ローカルだけのバックアップだけでなくリモートサーバのファイルをunisonで一元管理(cron実行)してみました。
unisonを使えば簡単に、ホスト間のファイルを同期する事ができます。
lftp(FTPクライアント)を使えば同じような事ができますが、大事なドキュメントファイルは暗号化(SSH)して送信したいものですね。
rsyncのアルゴリズムを使っているUnisonなので、だったらrsyncを使えばいいところですが…
機能の使い分けで判断すればいいでしょう。
●常にAホストからBホストへのミラーリングが目的ならrsyncを使用
●Aホスト、Bホストそれぞれで最新のファイルを元に更新する場合はunisonを使用
unisonでssh通信を行う方法
1 |
unison [HOST1] ssh://[HOST2] -force ssh://[HOST1] -batch -fastcheck false |
unisonを自動実行(毎朝6時)
1 |
#crontab -e~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~0 6 * * * unison [HOST1] ssh://[HOST2] -force ssh://[HOST1] -batch -fastcheck false~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
unison.logをローテーション
ファイル数の多い送信を定期的に行うと、ログファイルのサイズが大きくなってしまいます。
定期的にログローテーションしましょう。
1 |
# vi /etc/logrotate.d/unison~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/home/userdir/unison.log { dairy rotate 3}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |