SSブログ

clamdがLocalSocketを使用できないエラーが発生する (Debian 10) [Debian]

[ソフトウェアのバージョン]
clamdscan 0.103.2+dfsg-0+deb10u1
anacron 2.3-28

1. 発生事象


clamd が LocalSocket を使用できないエラーが発生する。

[エラー情報]
ERROR: Could not connect to clamd on LocalSocket /var/run/clamav/clamd.ctl: \
Connection refused

2. 原因


anacron により、ブート直後に clamdscan が実行されることがあるためである。

・anacron は、/lib/systemd/system/anacron.timer から実行される。
 前回の実施状況により、ブート直後に anacron が実行されることがある。

anacron により clamdscan を実行している。
 /etc/cron.daily/clamav-scan で設定している。

/var/run/clamav/clamd.ctl が作成されるまでに、少々時間を要する。
 このため、clamd.ctl が作成される前に、clamdscan が実行されることがある。


3. 対処方法


下記の手順により、ブート直後の clamdscan の実行を回避する。

(1) /lib/systemd/system/anacron.timer を変更する場合


(a) /lib/systemd/system/anacron.timer の編集

# diff anacron.timer anacron.timer.org
7c7
< OnBootSec=5min
---
> Persistent=true


・[Timer] 欄の 'Persistent=true' の削除
 ブート直後に anacron が実行されないようにする。

・[Timer] 欄への 'OnBootSec=5min' の追加
 ブートの 5分後に anacron を実行する。
 (clamd.ctl が作成されるまでの待ち時間を設けている。)


(b) 変更内容の反映

# systemctl daemon-reload


(2) /etc/systemd/system/anacron.timer を作成する場合


(a) /etc/systemd/system/anacron.timer の作成


/lib/systemd/system/anacron.timer をコピーする。


(b) /etc/systemd/system/anacron.timer の編集


/lib/systemd/system/anacron.timer の場合と同じ。


(c) 変更内容の反映

# systemctl daemon-reload
# systemctl enable anacron.timer


(補足)
/etc/systemd/system/timers.target.wants/anacron.timer が存在する。
ファイルの内容は、下記のいずれかである。
・/lib/systemd/system/anacron.timer へのリンク
・/etc/systemd/system/anacron.timer へのリンク


4. 備考


(1) /var/spool/anacron/cron{daily,weekly, monthly}


直近の実行日が保存されている。



nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。