Назад | Перейти на главную страницу

clamd: Когда завершилась перезагрузка подписи?

Можно отправить SIGUSR2 работающему экземпляру clamd для перезагрузки подписей.

Но как я могу (по сценарию) определить, были ли подписи перезагружены? Я, конечно, могу попробовать "сон 30", которого будет достаточно в большинстве случаев (исходя из моего опыта), но есть ли подход, основанный на сценариях, помимо попытки проанализировать файл журнала?

Выяснил:

#!/bin/bash
echo RELOAD | socat - /var/run/clamav/clamd.ctl
seconds=0
while : ; do
   output=`echo PING | socat - /var/run/clamav/clamd.ctl`
   if [ "$output" == "PONG" ]; then
      break
   fi
   sleep 1
   seconds=$[$seconds+1]
 done
 echo "reloaded after" $seconds "seconds"