Zainstalowałem clamav
i chcę zaktualizować pliki używane do identyfikacji wirusów:
$ sudo freshclam
ERROR: /var/log/clamav/freshclam.log is locked by another process
ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).
Co mam zrobić z tym błędem?
EDYTOWAĆ:
$ 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
sudo lsof /var/log/clamav/freshclam.log
?sudo freshclam
Odpowiedzi:
Krótka odpowiedź:
Nie musisz uruchamiać go ręcznie, ponieważ został on uruchomiony automatycznie i działa w tle, dlatego otrzymujesz ten komunikat.
Jeśli chcesz zatrzymać demona i uruchomić go ręcznie:
uruchom go ręcznie:
Co się dzieje i jak sobie z tym poradzić?
Za każdym razem, gdy napotkasz podobne sytuacje, błędy takie jak
file x has been locked
lubAnother process is using this file : /path/to/x
możesz użyćlsof
polecenia, aby dowiedzieć się, który proces korzysta z tego pliku, w twoim przypadku, jeśli uruchomisz:Powinieneś otrzymać wyjście takie jak:
abc
To nazwa procesu, który korzysta z tego pliku, w Twoim przypadku jest to:freshclam
.Oznacza to,
freshclam
że chcesz uruchomić już uruchomione przez demony clamav.możesz użyć
less /var/log/clamav/freshclam.log
lub podobnych poleceń, aby zobaczyć, co się dzieje.Dzięki temu nie musisz już uruchamiać go ręcznie, jest to proces pozwalający uniknąć konfliktu i polegający na tym, że wiele instancji tego samego procesu robi to samo w tym samym czasie.
Jeśli chcesz zatrzymać i uruchomić go ręcznie, a następnie wyślij
SIGTERM
do jego procesu, który daje temu procesowi szansę na zakończenie zadania i czyste zamknięcie, coś w stylu:sudo
może być konieczne.Następnie uruchom go ręcznie:
Jednak w tym przypadku możesz użyć:
zatrzymać demona.
źródło
sudo systemctl disable clamav-freshclam.service
może być droga.źródło
To może być kolejna opcja do tego ...
Mam nadzieję że to pomoże...
źródło