Скрипт по обновлению антивирусных баз NOD32 под Linux (PHP)

Материал из Wiki МИАЦ ВО
Перейти к навигации Перейти к поиску

Вот портировал скрипты по обновлению антивирусных баз NOD32 V2* и V3* в PHP.

Версии скрипта

Буду тут выкладывать описание версий с датами для более удобного отслеживания за изменениями

  1. Версия 1.3 от 16.01.2009
    1. Если при обновлении NOD32 V2 происходила ошибка, то она не сбрасывалась и для NOD32 V3
    2. Не правильно формировался блок [data0001] в файле update.ver в NOD32 V3, если в этой секции встречался знак =.
  2. Версия 1.2 от 2.12.2008
    1. Исправлено удаление файла, если он уже не нужен
  3. Версия 1.1 от 18.11.2008
    1. Первая версия.

Что умеет скрипт.

Умеет все тоже, что и скрипт на bash, только работает быстрее, один скрипт может обновлять обе версии и можно использовать на любой платформе (сам не пробовал) .

  1. Обновляет базы с официальных и бесплатных серверов NOD32 (для официальных серверов нужно задать имя и пароль для обновления).
  2. Обновляет сразу базы для V2 и V3, но может и отдельно.
  3. Если на сервере названия файлов не совпадают с локальными - не качает, а переименовывает файлы.
  4. Сам создает файл update.ver. Те при обновлении с зеркал обновляются только компоненты с более новыми версиями.
  5. Автоматически создает папки, нужные для работы программы, в том числе и для Web сервера.
  6. Создает папку на веб сервере с файлами обновления.
  7. При ошибке обновления восстанавливает базу в том виде, которая была до обновления.

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

Из чего состоит

  1. update.php - Сам скрипт
  2. function.php - Файл функций
  3. section.php - Файл описания секций
  4. setup.php - Файл установок

Инсталяция

  1. Устанавливаем пакеты php-cli.*.rpm и php-rar*.rpm.
    1. Если нет пакета php-rar*.rpm, можно установить RAR для Linux.
  2. Выкачиваем архив nod_upd_php_v1.3.tar.gz и распаковываем в любой каталог, например, /usr/local/upd_prog.
  3. Редактируем файл setup.php - Устанавливаем:
    1. Путь до директории временного хранения файлов
    2. Путь для Web каталога для баз для каждого сервера
    3. Адреса серверов
    4. Имя и пароль пользователя для каждого сервера (если сервера бесплатные, то не надо).
  4. Пробуем из под root запустить файл update.php.
  5. Теперь в crontab прописываем запуск скрипта
# Обновление баз NOD32*
00 09,15 * * * root /etc/upd_prog/update.php

и наслаждаемся автоматическим обновлением 2 раза в сутки

Настройка сервера Apache для доступа к базам по паролю