ClamAVがタイムアウトで起動しなくなった
2019年08月03日(土) - 22:57 | カテゴリ: Linux
“ns-lab”には様々な自宅サーバが稼働しているのだが、
その内の2台でClamAVが起動しなくなる事象が出た。
その2台は古めの仮想サーバホストに収容しており、
ClamAVが起動しきる前にsystemdによってdaemonをkillされている事が判った。
ClamAVはパターンファイルのサイズが肥大化しているので、
結果として起動時に読み込むパターンサイズも大きくなっている。
結果、起動する前にsystemdによってdaemonをkillされてしまい、
その後にsystemdによるservice再起動も重なる事で無限ループ状態に陥っていた。
対処は簡単で、systemd全体のタイムアウト時間を延ばすか、
ClamAVのサービスファイルに”TimeoutSec”を追記する。
[Unit] Description=ClamAV After=network.target freshclam.service Requires=freshclam.service [Service] Type=forking ExecStart=/usr/sbin/clamd TimeoutSec=10min [Install] WantedBy=multi-user.target |
こうする事で、TimeoutSecの時間はdaemonをkillせずに処理を待つ様になる。
ClamAVが起動しなくなる原因によるが、処理の遅いCPUを使っている場合には効果がある。