서명을 다시 로드하기 위해 실행 중인 clamd 인스턴스에 SIGUSR2를 보낼 수 있습니다.
하지만 (스크립트에서) 서명이 다시 로드되었는지 어떻게 확인할 수 있습니까? 물론 대부분의 경우에 충분할 "sleep 30"을 시도할 수 있지만(내 경험에 따르면) 로그 파일을 구문 분석하는 것 외에 스크립트 기반 접근 방식이 있습니까?
답변1
찾아 냈다:
#!/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"