clamav - ПОМИЛКА: /var/log/clamav/freshclam.log заблокований іншим процесом?


49

Я встановив 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 lsof /var/log/clamav/freshclam.log?
Ravexina

1
Тому не потрібно запускати її, вона автоматично була запущена.
Ravexina

@Ravexina не потрібно запускати що?
laukok

1
sudo freshclam
Ravexina

1
Я думаю, це повинен бути журнал процесу оновлення, так що не шкода ... це просто додає те, що відбувається з цим файлом.
Ravexina

Відповіді:


63

Коротка відповідь:

Не потрібно запускати його вручну, оскільки воно було запущено автоматично і працює у фоновому режимі, тому ви отримуєте це повідомлення.

Якщо ви хочете зупинити демон і запустити його вручну:

sudo systemctl stop clamav-freshclam.service

запустіть його вручну:

sudo freshclam

Що відбувається і як з цим впоратися?

Кожен раз, коли ви стикаєтесь з подібними ситуаціями, помилок, таких як file x has been lockedабо Another process is using this file : /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.

ви можете використовувати less /var/log/clamav/freshclam.logабо подібні команди, щоб побачити, що відбувається.

Таким чином, вам більше не потрібно запускати його вручну, це процес, щоб уникнути будь-якого конфлікту і мати кілька примірників одного і того ж процесу, які роблять одну і ту ж справу одночасно.

Якщо ви хочете зупинити його і запустити його вручну, то надішліть його SIGTERMна його процес, що дає процесу можливість закінчити свою роботу і закрити себе чисто, як-от:

sudo pkill -15 -x freshclam
  • в цьому випадку sudoможе знадобитися.
  • 15: SIGTERM - це за замовчуванням

Потім запустіть його вручну:

sudo freshclam

Однак у цьому випадку ви можете використовувати:

sudo systemctl stop clamav-freshclam.service

щоб зупинити демон.


Чи запуститься демон знову після перезавантаження? Якщо так, чи знаєте ви найкращий спосіб запобігти цьому? Дякую.
Джошуа Пінтер

sudo systemctl disable clamav-freshclam.serviceможе бути шлях.
Равексіна

Дякую, я спробую це, якщо воно з'явиться знову.
Джошуа Пінтер


8

Це може бути інший варіант для цього ...

sudo service clamav-freshclam stop
sudo freshclam
sudo service clamav-freshclam start

Сподіваюся, це допомагає ...

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.