Beberapa waktu yang lalu saya upgrade Clamav antivirus di Server Slackware dari versi 0.90 ke versi 0.90.3. Upgrade berjalan dengan sukses dan sewaktu saya update data antivirus menggunakan freshclam juga tidak ada masalah.

Masalah timbul setelah saya restart clamav dan muncul error sbb:

# ./rc.clamav restart
Stopping clamd… OK.
Stopping clamav-milter… OK.
Starting ClamAV daemon: /usr/sbin/clamd
Running as user clamav (UID 100, GID 1006)
Starting ClamAV milter: /usr/sbin/clamav-milter
/var/run/clamav/clamd.sock: No such file or directory
Can’t talk to clamd server via /var/run/clamav/clamd.sock
Check your entry for LocalSocket in /etc/clamd.conf
/etc/rc.d/rc.clamav: Could not start clamav-milter.

Padahal setelah saya cek /var/run/clamav/clamd.sock, file tersebut ada dan clamav sudah running well, tinggal clamav-milter yang belum jalan. Jadi seolah-olah clamav-milter tidak mengenal /var/run/clamav/clamd.sock.

Lalu saya coba jalankan clamav secara manual satu-satu tanpa menggunakan script.

  1. Jalankan clamav
    #:/usr/sbin/clamd –> OK
  2. Lalu cek log clamav
    # tail /var/log/clamd -f
    13:11:59 2007 -> +++ Started at 13:11:59 2007
    13:11:59 2007 -> clamd daemon 0.90.3 (OS: linux-gnu, ARCH: i386, CPU: i486)
    13:11:59 2007 -> Log file size limited to 1048576 bytes.
    13:11:59 2007 -> Reading databases from /var/lib/clamav
    13:12:38 2007 -> Loaded 129489 signatures.
    13:12:38 2007 -> Unix socket file /var/run/clamav/clamd.sock
  3. Setelah clamd.sock terbentuk, Jalankan clamav-milter
    #:/usr/sbin/clamav-milter –> OK

Kesimpulannya sewaktu menjalankan clamav-milter kemungkinan clamd.sock belum terbentuk sehingga muncul error seperti itu. Dari log terlihat (point 2 yg tulisan tebal) bahwa proses dari start clamav, lalu membaca database sampai terbentuk clamd socket membutuhkan waktu sekitar 40 second.

Lalu saya coba tambahkan waktu (sleep) sekitar 50 second di script rc.clamav pada proses menjalankan clamav-milter. Lalu saya coba jalankan script tersebut :

# ./rc.clamav start
Starting ClamAV daemon: /usr/sbin/clamd
Running as user clamav (UID 100, GID 1006) OK
Starting ClamAV milter: /usr/sbin/clamav-milter OK

Akhirnya clamav dan clamav-milter sudah jalan normal seperti biasa.

Setelah clamav saya upgrade ke versi terbaru ternyata membutuhkan waktu lebih lama untuk membaca database di /var/lib/clamav. Hal ini disebabkan ukuran file di direktori tersebut yang semakin besar.