Всем привет!
Заметка о том, как обновить ClamAV до актуальной версии (на время заметки — 0.105.0) в ручном режиме.
Т.к. не всегда что-то обновляется из репозиториев, а поддерживать ПО в актуальном состоянии просто необходимо, то пришлось обновляться вручную.
Прошлая заметка была про обновление антивирусных баз.
Ссылка на скачивание внизу.
Пожалуйста, перед обновление сделайте резервную копию либо самого сервера, либо файла конфигурации — /usr/local/etc/freshclam.conf
Так же будьте внимательны при вводе команд.
1. Скачать новую версию пакета и закинуть на сервер.
2. Удаление старой версии:
2.1. проверка установленной версии
1 | clamscan --version |
или
1 | freshclam --version |
вывод, примерно, будет таким:
ClamAV 0.103.6/26590/Fri Jul 1 10:25:21 2022
или таким:
ClamAV 0.104.1/26593/Mon Jul 4 10:28:57 2022
Пример, что на разных серверах разная версия.
2.2. Удаление старой версии.
Тут несколько сложнее. Согласно оф документации, удаление зависит от способо установки: сборка из исходного кода или установка пакета. У меня была установка пакета (через apt), поэтому я удаляю им же. Для тех, у кого из исходного кода, внизу ссылка, где будет сохраненная версия документации.
1 | sudo aptitude remove clamav |
Вывод:
2.3 Установка новой версии.
Переходим в каталог со скаченной новой версией ClamAV. У меня тут есть и архив (tar.gz) и deb-пакет.
На одном сервере я попробую обновить с помощью установки deb, на другом из архива (исходники).
2.3.1 Установка deb-пакета.
Выполнить команду:
1 | sudo dpkg -i clamav-0.105.0.linux.x86_64.deb |
Проверите версию:
Выполнить обновление, при необходимости:
1 | sudo freshclam -v |
2.3.2 Обновление из исходного кода.
На другом сервере обновлю из исходников.
Распаковка архива:
1 | tar -xf clamav-0.105.0.tar.gz |
Что бы tar выводил на экран ход распаковки, вы можете добавить ключ -v
Проверим, что распаковка прошла успешно:
1 | ls -d */ |
здесь ключ -d — показать только каталоги
Переходим в каталог:
1 | cd clamav-0.105.0 |
и установим (инструменты сборки и зависимости):
1 2 3 4 5 6 | apt-get update && apt-get install -y \ `# install tools` \ gcc make pkg-config python3 python3-pip python3-pytest valgrind \ `# install clamav dependencies` \ check libbz2-dev libcurl4-openssl-dev libjson-c-dev libmilter-dev \ libncurses5-dev libpcre2-dev libssl-dev libxml2-dev zlib1g-dev |
Вывод большой, показываю частично, убрал под спойлер
Установить rustc
1 | apt-get install -y cargo rustc |
Вывод процесса установки:
Теперь пробуем собрать:
1 2 3 4 5 | mkdir build && cd build cmake .. cmake --build . ctest sudo cmake --build . --target install |
Как будто бы всё нормально.
Проверим:
Как видно, clamscan показал, что версия новая, а freshclam выдал ошибку, что файл отсутствует.
В каталоге clamav-0.105.0/build есть каталог freshclam. Внутри этого каталога есть файл — freshclam, с установленным битом на исполнение:
-rwxr-xr-x 1 root root 213408 Jul 6 13:30 freshclam
Скопируем данный файл
1 | sudo cp clamav-0.105.0/build/freshclam/freshclam /usr/bin |
и повторим проверку:
1 | freshclam --version |
У меня показало ошибку:
freshclam: error while loading shared libraries: libfreshclam.so.2: cannot open shared object file: No such file or directory
Доустановить пакет, если это требуется:
1 | sudo apt install libclamav9 |
перелогиниться.
След ошибка:
ERROR: Can’t open/parse the config file /usr/local/etc/freshclam.conf
Файл конфигурации есть в самом каталоге: /usr/local/etc/freshclam.conf.sample
Можно либо его скопировать и прописать нужные настройки, либо взять ниже под спойлером:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | # Automatically created by the clamav-freshclam postinst # Comments will get lost when you reconfigure the clamav-freshclam package DatabaseOwner clamav UpdateLogFile /var/log/clamav/freshclam.log LogVerbose false LogSyslog false LogFacility LOG_LOCAL6 LogFileMaxSize 0 LogRotate true LogTime true Foreground false Debug false MaxAttempts 5 DatabaseDirectory /var/lib/clamav DNSDatabaseInfo current.cvd.clamav.net ConnectTimeout 30 ReceiveTimeout 30 TestDatabases yes #ScriptedUpdates yes ScriptedUpdates no PrivateMirror clmvupd.deltamoby.ru CompressLocalDatabase no Bytecode true NotifyClamd /etc/clamav/clamd.conf # Check for new database 24 times a day Checks 24 DatabaseMirror db.local.clamav.net DatabaseMirror database.clamav.net |
Проверить еще раз:
1 | freshclam --version |
Попробовать выполнить обновление баз:
1 | freshclam -v |
Всё работает.
Ссылка на файлы установки и документацию.
N297T!b0Dej>c
UPD:
- вышла версия — 1.4.0
- вышла версия — 1.4.1
If you found an error, highlight it and press Shift + Enter or to inform us.