Я установил clamav
и я хочу для обновления файлов, которые это использует для идентификации вирусов:
$ sudo freshclam
ERROR: /var/log/clamav/freshclam.log is locked by another process
ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).
Что я должен сделать с этой ошибкой?
Править:
$ 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 systemctl stop clamav-freshclam.service
запустить его вручную:
sudo freshclam
Каждый раз, когда вы сталкиваетесь с подобными ситуациями, возникают такие ошибки, как file x был заблокирован
или Другой процесс использует этот файл: / path / to / x
вы можете использовать команду lsof
, чтобы узнать, какой процесс использует этот файл, в вашем случае если вы запустите:
sudo lsof /var/log/clamav/freshclam.log
, вы должны получить следующий результат:
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
- это имя процесса, который использует этот файл, в вашем случае это: freshclam
.
Это означает, что freshclam
, который вы хотите запустить, уже был запущен демонами clamav.
вы можете использовать меньше /var/log/clamav/freshclam.log
или аналогичные команды чтобы узнать, что происходит.
Так что вам больше не нужно запускать его вручную, это процесс, позволяющий избежать конфликтов и одновременное выполнение нескольких экземпляров одного и того же процесса.
Если вы хотите остановить его и запустить вручную, затем отправьте SIGTERM
своему процессу, чтобы дать процессу возможность завершить свою работу и полностью закрыть себя, что-то вроде:
sudo pkill -15 -x freshclam
sudo
может быть необходимо. Затем запустите его вручную:
sudo freshclam
Однако в этом случае вы можете использовать:
sudo systemctl stop clamav-freshclam.service
, чтобы остановить демон.
sudo /etc/init.d/clamav-freshclam stop
sudo freshclam
sudo /etc/init.d/clamav-freshclam start
Это может быть еще одна опция...
sudo service clamav-freshclam stop
sudo freshclam
sudo service clamav-freshclam start
Надеюсь, это поможет...