ログをチェックすると、下記のエラーを吐いてlsyncdが止まっていました
Fri Mar 26 20:03:15 2010: ERROR: Initial rsync from /usr/local/www/apache22 to 192.168.1.131::wwwadmin failed.
これでは本番環境で試せないので、ググってこちらのエントリーを参照させていただきました。
# vi /etc/lsyncd.conf.xml
<settings>
:
:
<stubborn/> #追加
</settings>
で、起動後再度ログを確認。ログをチェックすると下記のエラーを吐いていましたが、接続は切れていないようです。
ERROR: Initial rsync from /usr/local/www/apache22 to 192.168.1.131::wwwadmin failed, but continuing because being stubborn.
しかし他のバグが・・・。
Tue Mar 30 09:18:23 2010: ERROR: Cannot add watch /usr/local/www/apache22 (28:No space left on device)
再度ググって調べてみるとこちらのエントリーに解決策が。さっそく参照させていただきました。
lsyncdで監視できる対象のファイル数は制限されているとのことなので、監視できるファイル数の上限を引き上げます。(8192→16384)
# cat /proc/sys/fs/inotify/max_user_watches
8192
# cp -ip /etc/sysctl.conf{,.org}
# vi /etc/sysctl.conf
下記の一文を追加して保存
fs.inotify.max_user_watches = 16394
# /sbin/sysctl -p
ためしに空のファイル「test_temp」を作ってみる。
mktemp /usr/local/www/apache22/test_temp
ログファイルの確認
Tue Mar 30 09:45:29 2010: event CREATE:test_temp triggered.
Tue Mar 30 09:45:29 2010: rsyncing /usr/local/www/apache22/ --> 192.168.1.131::w
Tue Mar 30 09:45:29 2010: event CLOSE_WRITE:test_temp triggered.
Tue Mar 30 09:45:29 2010: rsyncing /usr/local/www/apache22/ --> 192.168.1.131::w
同期先のディレクトリに「test_temp」が転送され、同期が取れていることを確認しました。
「test_temp」を削除
# rm -f /usr/local/www/apache22/test_temp
ログファイルの確認
Tue Mar 30 10:01:05 2010: event DELETE:test_temp triggered.
Tue Mar 30 10:01:05 2010: rsyncing /usr/local/www/apache22/ --> 192.168.1.131::wwwadmin/
同期先のディレクトリの「test_temp」が削除され、同期が取れていることを確認しました。