👎

lsyncd でエラーが出て起動後すぐにエラー停止していた

2016/11/22に公開

症状

  • service lsyncd start を実行すると [OK] と出る。
  • しかし転送先を確認したところファイル同期が行われていない。
  • service lsyncd status を実行すると、lsyncd が停止していますがPIDファイルが残っています と出る。
  • プロセスファイル (rm -f /var/run/lsyncd.pid) を削除してみて再度起動してみるけど、やっぱり同じ状態になる。
  • /var/log/messages でも lsyncd でエラーが出てる。

今回の原因

転送ファイル数が多かった
ただそれだけ。
基礎だろそんなもん、ってところだけど、備忘のために。

対処

  1. /etc/sysctl.conffs.inotify.max_user_watches の値を増やす(該当する行がない場合は追記する)。
  2. /sbin/sysctl -p を実行し、設定を反映させる。
  3. service lsyncd start で再度起動する(PIDエラーが表示される場合はプロセスファイルを削除する)。

以下設定例

fs.inotify.max_user_watches = 819200

Discussion