Ubuntu 14.04サーバーでClamAVデーモンを起動できません。サービスを開始しようとすると、次のようになります。
Sudo service clamav-daemon start
* Starting ClamAV daemon clamd [fail]
clamdscan
を実行しようとすると、次のようになります
clamdscan test.jpg
ERROR: Could not lookup (null): Servname not supported for ai_socktype
----------- SCAN SUMMARY -----------
Infected files: 0
Total errors: 1
Time: 0.000 sec (0 m 0 s)
ファイルに対して通常のclamscan
を実行すると、すべてが正常です。
clamscan test.jpg
test.jpg: OK
----------- SCAN SUMMARY -----------
Known viruses: 3708601
Engine version: 0.98.5
Scanned directories: 0
Scanned files: 1
Infected files: 0
Data scanned: 0.18 MB
Data read: 0.18 MB (ratio 1.02:1)
Time: 9.991 sec (0 m 9 s)
ClamAVに関連してインストールしたパッケージは次のとおりです。
> dpkg -l | grep 'clam'
ii clamav 0.98.5+addedllvm-0ubuntu0.14.04.1 AMD64 anti-virus utility for Unix - command-line interface
ii clamav-base 0.98.5+addedllvm-0ubuntu0.14.04.1 all anti-virus utility for Unix - base package
ii clamav-daemon 0.98.5+addedllvm-0ubuntu0.14.04.1 AMD64 anti-virus utility for Unix - scanner daemon
ii clamav-freshclam 0.98.5+addedllvm-0ubuntu0.14.04.1 AMD64 anti-virus utility for Unix - virus database update utility
ii libclamav6 0.98.5+addedllvm-0ubuntu0.14.04.1 AMD64 anti-virus utility for Unix - library
/etc/clamav/clamd.conf
http://paste.ubuntu.com/9544920/ の内容は次のとおりです。
ll /var/run/
http://paste.ubuntu.com/9553966/ の内容は次のとおりです。
問題はメモリ使用量でした。どうやらclamav-daemon
は、すべてのウイルスライブラリがロードされたときに約300MBのメモリを使用するようです。 1 GBのRAMとmysql-server-5.6
の小さなVPSで実行していますが、その大部分を占めています。パフォーマンスを改善するために、performance_schema = off
を/etc/mysql/my.cnf
に追加して、メモリ消費を約400MB削減しました! (なぜこれが5.6.6の新しいデフォルトなのですか?!)。とにかく、それによりclamav-daemon
が問題なく開始できるようにメモリが解放されました。
わかった! :-)ターミナルで次のコマンドを入力します Ctrl+Alt+T
Sudo touch /var/run/clamav/clamd.ctl
Sudo chown clamav:clamav /var/run/clamav/clamd.ctl
再びclamd
を開始します!
Clamavでvagrantボックスをプロビジョニングするとき、私はこの問題にかなり一貫して遭遇しました。定義がダウンロードされていることを確認し、サービスを再起動すると一貫して修正されます。
Sudo freshclam && Sudo service clamav-daemon restart