it-swarm.com.de

clamav - FEHLER: /var/log/clamav/freshclam.log ist von einem anderen Prozess gesperrt?

Ich habe clamav installiert und möchte die Dateien aktualisieren, mit denen Viren identifiziert werden:

$ Sudo freshclam

ERROR: /var/log/clamav/freshclam.log is locked by another process
ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).

Was soll ich mit diesem Fehler machen?

EDIT:

$ Sudo lsof /var/log/clamav/freshclam.log

COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF     NODE NAME
freshclam 866 clamav    3wW  REG  259,1   100134 10486045 /var/log/clamav/freshclam.log
45
laukok

Kurze Antwort:

Sie müssen es nicht manuell ausführen, da es automatisch ausgeführt wird und im Hintergrund ausgeführt wird. Aus diesem Grund erhalten Sie diese Nachricht.

Wenn Sie den Dämon stoppen und manuell ausführen möchten:

Sudo systemctl stop clamav-freshclam.service

führen Sie es manuell aus:

Sudo freshclam

Was passiert und wie geht man damit um?

Jedes Mal, wenn Sie in eine ähnliche Situation geraten und Fehler wie file x has been locked oder Another process is using this file : /path/to/x auftreten, können Sie mit dem Befehl lsof herausfinden, welcher Prozess diese Datei verwendet.

Sudo lsof /var/log/clamav/freshclam.log

Sie sollten eine Ausgabe erhalten wie:

COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF     NODE NAME
abc       126   user   3wW  REG  259,1  100          1048 /var/log/clamav/freshclam.log

abc ist der Name des Prozesses, der diese Datei verwendet, in Ihrem Fall: freshclam.

Das bedeutet, dass freshclam, das Sie ausführen möchten, bereits von Clamav-Dämonen ausgeführt wurde.

sie können less /var/log/clamav/freshclam.log oder ähnliche Befehle verwenden, um zu sehen, was los ist.

Sie müssen es also nicht mehr manuell ausführen. Es ist ein Prozess, um Konflikte zu vermeiden und mehrere Instanzen desselben Prozesses gleichzeitig auszuführen.

Wenn Sie möchten, dass es angehalten und manuell ausgeführt wird, senden Sie ein SIGTERM an den Prozess, damit der Prozess seinen Job beenden und sich sauber schließen kann. Beispiel:

Sudo pkill -15 -x freshclam
  • in diesem Fall kann Sudo erforderlich sein.
  • 15: SIGTERM ist die Standardeinstellung

Führen Sie es dann manuell aus:

Sudo freshclam

In diesem Fall können Sie jedoch Folgendes verwenden:

Sudo systemctl stop clamav-freshclam.service

um den Daemon zu stoppen.

59
Ravexina
Sudo /etc/init.d/clamav-freshclam stop
Sudo freshclam
Sudo /etc/init.d/clamav-freshclam start
23
flavio.troja

Dies könnte eine weitere Option für diese sein ...

Sudo service clamav-freshclam stop
Sudo freshclam
Sudo service clamav-freshclam start

Hoffe das hilft...

8
Phd21