Проба пера: статья о создании зеркала для NOD32
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
- tray.irk
- сержант
- Сообщения: 266
- Зарегистрирован: 2008-10-22 8:21:36
- Откуда: Иркутск
- Контактная информация:
Re: Проба пера: статья о создании зеркала для NOD32
он работает с мускулем ... а надо что бы без него ...
Числа не управляют миром, но могут показать как управляется мир
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- thefree
- лейтенант
- Сообщения: 980
- Зарегистрирован: 2008-12-29 9:23:19
- Откуда: Весёлая Страна
Re: Проба пера: статья о создании зеркала для NOD32
Не судите меня строго, Я не волшебник, а только учусь!
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
- server801
- ст. лейтенант
- Сообщения: 1421
- Зарегистрирован: 2008-09-27 21:15:16
- Откуда: Саратов
- Контактная информация:
Re: Проба пера: статья о создании зеркала для NOD32
работает на самом деле без проблем!но вот бы хотелось бы включить функцию отправки на мыло что скачалось и когда при помощи sendmail или другого агента.как можно реализовать?thefree писал(а):Я сразу скажу, как это работает для меня досехпор загадка но так сложилась что я уперся в то что не обнавляли нужную версию нод32 для меня. Взял палки в руки и пошел делать сам.
Что этот скрипт делает, гуглит ищет ключи проверяет сохраняет их ... качает, выводит дебаг, сам создает директории если не хватает, проверяет версии и выкачивает для 7и версий обновления.
Вот его настройка (конфиг в самом файле)ВНИМАНИЕ ВСЕ ОБНАВЛЕНИЯ ВЕСЯТ 250МБКод: Выделить всё
### # # debug # our $debug = 1; # Config for google ajax search # rus: http://code.google.com/intl/ru-RU/apis/ajaxsearch/documentation/reference.html#_intro_fonje # eng: http://code.google.com/intl/en-EN/apis/ajaxsearch/documentation/reference.html#_intro_fonje our $google_http = 'http://ajax.googleapis.com/ajax/services/search/blogs'; #Где мы ищем (описано по ссылки выши) our $google_search = '?v=1.0&rsz=large&q=nod32+EAV-*+OR+AV-*+pass*'; #Сам запрос our $google_referer = 'http://yandex.ru/yandsearch?text=nod32+key&lr=213'; #Гугл просит откуда приходим, подставляю что с яндекса # # Config Nod32 # our @nod32_mirror = ('http://u42.eset.com/', 'http://u43.eset.com/', 'http://u43.eset.com/', 'http://u44.eset.com/', 'http://u45.eset.com/', 'http://u46.eset.com/', 'http://u47.eset.com/', 'http://u48.eset.com/'); #список зеркал our $nod32_test_key_file = '/download/engine3/em002_32_r0.nup'; #фаил на котором проверяем ключь our @nod32_db = ( 'eset_upd', 'nod_upd', 'eset_upd/sky', 'eset_upd/pre', 'eset_upd/v4/pre', 'eset_upd/v4', 'eset_upd/v4/sky' ); #базы которые обнавлять # # Config for patch # our $path_nod32_auth = '/home/samba/hdd0/thefree/nod32.auth'; #где хранить ключ our $path_nod32_base = '/home/samba/hdd0/thefree/www'; #куда кидать вся это (777 для папки) our $path_unrar = '/usr/local/bin/unrar'; #где у нас рар ###
Одним словам потестируйти плиз.
Во еще выбирает хост если не работает.
Нужны порты
_http://cvsweb.freebsd.org/ports/archivers/unrar
_http://cvsweb.freebsd.org/ports/www/p5-libwww
_http://cvsweb.freebsd.org/ports/converters/p5-JSON-Any
Запуск! Ставим права и поехали
- thefree
- лейтенант
- Сообщения: 980
- Зарегистрирован: 2008-12-29 9:23:19
- Откуда: Весёлая Страна
Re: Проба пера: статья о создании зеркала для NOD32
Так и осталось
- Перевел скрипт в utf-8 сам формат
- Атрибуту к unrar
- Поддержка wget
- Поддержка sendmail
Вот его настройка (конфиг в самом файле)
ВНИМАНИЕ ВСЕ ОБНАВЛЕНИЯ ВЕСЯТ 250МБ
Одним словам потестируйти плиз.
ОЧЕНЬ прошу и кому не жалко трафика ...
Отпишитесь по результатом
Нужны порты
_http://cvsweb.freebsd.org/ports/archivers/unrar
_http://cvsweb.freebsd.org/ports/www/p5-libwww
_http://cvsweb.freebsd.org/ports/converters/p5-JSON-Any
_http://cvsweb.freebsd.org/ports/ftp/wget/
Запуск! Ставим права и поехали
upd 18/01/2009 21:15
- заменил адрес файла для проверки ключа (файл меньшего размер)
- изменил индийский код на
upd 19/01/2009 14:45
- Версия v3 в аттачи
- Добавлен параметр к unrar our $unrar_opt = 'e -y -p- %PATHFILE% %PATHBASE% 2>/dev/null > /dev/null'; связано с тем что эти кадры стали чем то криво упаковывать базу eset_upd/v4/sky или уберите её с обновления
- еще оказался лишний трафик если качаете не wget, оказалось что размер промежуточных баз не совпадает.
===
P.s. вообще советую обновлять только базы eset_upd, nod_upd
Плюшки:Я сразу скажу, как это работает для меня досехпор загадка но так сложилась что я уперся в то что не обнавляли нужную версию нод32 для меня. Взял палки в руки и пошел делать сам.
Что этот скрипт делает, гуглит ищет ключи проверяет сохраняет их ... качает, выводит дебаг, сам создает директории если не хватает, проверяет версии и выкачивает для 7и версий обновления.
- Перевел скрипт в utf-8 сам формат
- Атрибуту к unrar
- Поддержка wget
- Поддержка sendmail
Вот его настройка (конфиг в самом файле)
Код: Выделить всё
###
#
# debug
#
our @debug = (1); # 0 - выкл., 1 - вкл. показ дебага
# Config for google ajax search
# rus: http://code.google.com/intl/ru-RU/apis/ajaxsearch/documentation/reference.html#_intro_fonje
# eng: http://code.google.com/intl/en-EN/apis/ajaxsearch/documentation/reference.html#_intro_fonje
our $google_http = 'http://ajax.googleapis.com/ajax/services/search/blogs'; # Где мы ищем (описано по ссылки выши)
our $google_search = '?v=1.0&rsz=large&q=nod32+EAV-*+OR+AV-*+pass*'; # строка запроса (если есть ключ гугла то можно и его поставить)
our $google_referer = 'http://yandex.ru/yandsearch?text=nod32+key&lr=213'; # Гугл просит откуда приходим, подставляю что с яндекса
#
# Config Nod32
#
our @nod32_mirror = ('http://u42.eset.com/', 'http://u43.eset.com/', 'http://u43.eset.com/', 'http://u44.eset.com/',
'http://u45.eset.com/', 'http://u46.eset.com/', 'http://u47.eset.com/', 'http://u48.eset.com/'); # Список зеркал нода
our $nod32_test_key_file = '/download/engine3/em002_32_r0.nup'; # фаил на котором проверяем ключь
our @nod32_db = ( 'eset_upd', 'nod_upd', 'eset_upd/sky', 'eset_upd/pre', 'eset_upd/v4/pre', 'eset_upd/v4', 'eset_upd/v4/sky' ); # базы которые обнавлять
#
# Config for patch
#
our $path_nod32_auth = '/home/samba/hdd0/thefree/nod32.auth'; # где хранить ключ
our $path_nod32_base = '/home/samba/hdd0/thefree/www'; # куда кидать вся это (777 для папки)
#
# Config for unrar
#
our $path_unrar = '/usr/local/bin/unrar'; # где у нас unrar
our $unrar_opt = 'e -y %PATHFILE% %PATHBASE% 2>/dev/null > /dev/null'; # атрибуты unrar (%PATHFILE% - путь к файлу, %PATHBASE% - путь к директории)
#
# Config for wget
#
our $wget = 1; # 0 - выкл., 1 - вкл. качалку
our $path_wget = '/usr/local/bin/wget'; # где у нас wget
our $wget_opt = '-q -c -N -P %PATHBASE% --http-user=%USERNAME% --http-password=%PASSWORD%'; # атрибуты wget (%PATHBASE% - путь к директории, %USERNAME% - логин, %PASSWORD% - ключ)
#
# Config for sendmail
#
our $sendmail = 1; # 0 - выкл., 1 - вкл. почту
our $path_sendmail = '/usr/sbin/sendmail'; # где у нас почтарь
our $sendmail_opt = '-t'; # атрибуты для него
our $sendmail_from = 'noreplay@nod32.local'; # от кого почта
our $sendmail_to = 'thefree@local'; # кому почту слать
our $sendmail_subject = 'NOD32 - Update'; # заголовок письма
###
Одним словам потестируйти плиз.
ОЧЕНЬ прошу и кому не жалко трафика ...
Отпишитесь по результатом
Нужны порты
_http://cvsweb.freebsd.org/ports/archivers/unrar
_http://cvsweb.freebsd.org/ports/www/p5-libwww
_http://cvsweb.freebsd.org/ports/converters/p5-JSON-Any
_http://cvsweb.freebsd.org/ports/ftp/wget/
Запуск! Ставим права и поехали
upd 18/01/2009 21:15
- заменил адрес файла для проверки ключа (файл меньшего размер)
- изменил индийский код
Код: Выделить всё
if ($c{'HOSTS'}) {
delete $c{'HOSTS'};
}
if ($c{'COMPATLIST'}) {
delete $c{'COMPATLIST'};
}
if ($c{'Expire'}) {
delete $c{'Expire'};
}
if ($c{'data0001'}) {
delete $c{'data0001'};
}
if ($c{'SETUP'}) {
delete $c{'SETUP'};
}
Код: Выделить всё
my @remove = ('HOSTS', 'COMPATLIST', 'Expire', 'data0001', 'SETUP');
foreach my $elt (@remove) {
delete($c{$elt}) if (exists($c{$elt}));
}
- Версия v3 в аттачи
- Добавлен параметр к unrar our $unrar_opt = 'e -y -p- %PATHFILE% %PATHBASE% 2>/dev/null > /dev/null'; связано с тем что эти кадры стали чем то криво упаковывать базу eset_upd/v4/sky или уберите её с обновления
- еще оказался лишний трафик если качаете не wget, оказалось что размер промежуточных баз не совпадает.
===
P.s. вообще советую обновлять только базы eset_upd, nod_upd
- Вложения
-
nod32_v3.tar
- (9.5 КБ) 139 скачиваний
-
nod32.tar
- (9.5 КБ) 77 скачиваний
Не судите меня строго, Я не волшебник, а только учусь!
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
-
- проходил мимо
Re: Проба пера: статья о создании зеркала для NOD32
Couldn't find a JSON Package. at ./nod32.pl line 9
BEGIN failed--compilation aborted at ./nod32.pl line 9.
почему???
ведь пакет _http://cvsweb.freebsd.org/ports/converters/p5-JSON-Any установлен !!!
как бороть?
BEGIN failed--compilation aborted at ./nod32.pl line 9.
почему???
ведь пакет _http://cvsweb.freebsd.org/ports/converters/p5-JSON-Any установлен !!!
как бороть?
- thefree
- лейтенант
- Сообщения: 980
- Зарегистрирован: 2008-12-29 9:23:19
- Откуда: Весёлая Страна
Re: Проба пера: статья о создании зеркала для NOD32
Код: Выделить всё
find / -name JSON
Не судите меня строго, Я не волшебник, а только учусь!
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
-
- проходил мимо
Re: Проба пера: статья о создании зеркала для NOD32
Неа, не хочет так тоже.thefree писал(а):Либо в папке где скрипт создать /lib/JSON и закинуть туда _http://cpansearch.perl.org/src/PERIGRIN/JSON-Any-1.22/lib/JSON/Any.pmКод: Выделить всё
find / -name JSON
Ищу:
Nod32UPD# find / -name JSON
/usr/lib/perl5/site_perl/5.8.8/mach/auto/JSON
/usr/lib/perl5/site_perl/5.8.8/JSON
/usr/local/lib/perl5/site_perl/5.8.8/mach/auto/JSON
/usr/local/lib/perl5/site_perl/5.8.8/JSON
/usr/local/nod32_2/lib/JSON
где, /usr/local/nod32_2 - папка со скриптом
Где ж он его ищет? Если смотреть в скрипт, то вначале выполняется use LWP::UserAgent; LWP (по аналогии) был найден в аналогичных папках:
Nod32UPD# find / -name LWP
/usr/lib/perl5/site_perl/5.8.8/mach/auto/LWP
/usr/lib/perl5/site_perl/5.8.8/LWP
/usr/local/lib/perl5/site_perl/5.8.8/mach/auto/LWP
/usr/local/lib/perl5/site_perl/5.8.8/LWP
Тогда гдеж он ищет JSON и не находит?

- tray.irk
- сержант
- Сообщения: 266
- Зарегистрирован: 2008-10-22 8:21:36
- Откуда: Иркутск
- Контактная информация:
Re: Проба пера: статья о создании зеркала для NOD32
Так тут поступают вопросы ... для тех кто не умеет пользоваться поиском ... еще раз ...
Что необходимо для полноценной работы скрипта:
1) PERL установленный с поддержкой URI и LWP, для этого выполняем команды
2) WGET
3) UNRAR
Далее правим файл nod.sh
меняем пути в 3-х строках
далее создаем необходимые директории
ну и запускаем скрипт ...
после чего топаем в диру /usr/local/www/apache22/data и тут должно появиться несколько директорий ... eset_upd, nod_upd и download
если такие имеются, то все отлично ...
ну а дальше можно данный скрипт запихать в крон и забыть о нем
Ниже на всякий случай прикрепил скрипты ...
Что необходимо для полноценной работы скрипта:
1) PERL установленный с поддержкой URI и LWP, для этого выполняем команды
Код: Выделить всё
#cpan -i URI
#cpan -if LWP
3) UNRAR
Далее правим файл nod.sh
Код: Выделить всё
use FindBin;
use lib $FindBin::Bin;
use keys;
$PATH = "/usr/local/www/apache22/data";
$TMP = "$PATH/tmp";
$KEY_DIR = "/usr/local/etc/script/nod32";
keys::start();
open(AUTHFILE, "$KEY_DIR/nod32.key");
print "!!! New Key !!!";
$LOGIN = <AUTHFILE>;
$LOGIN =~ s/username=//;
chomp $LOGIN;
print "username: $LOGIN";
Код: Выделить всё
$PATH = "/usr/local/www/apache22/data"; # путь до обнов
$TMP = "$PATH/tmp"; # временная папка
$KEY_DIR = "/usr/local/etc/script/nod32"; # путь до скрипта
Код: Выделить всё
#mkdir /usr/local/www/apache22/data/tmp && chmod -R 777 /usr/local/www/apache22/data/tmp
Код: Выделить всё
#./nod.sh
если такие имеются, то все отлично ...
ну а дальше можно данный скрипт запихать в крон и забыть о нем

Ниже на всякий случай прикрепил скрипты ...
- Вложения
-
nod_vs.tray.rar
- (2.45 КБ) 131 скачивание
Числа не управляют миром, но могут показать как управляется мир
- thefree
- лейтенант
- Сообщения: 980
- Зарегистрирован: 2008-12-29 9:23:19
- Откуда: Весёлая Страна
Re: Проба пера: статья о создании зеркала для NOD32
добавь после строчки (в скрипте)den писал(а): Неа, не хочет так тоже.
Ищу:
Nod32UPD# find / -name JSON
/usr/lib/perl5/site_perl/5.8.8/mach/auto/JSON
/usr/lib/perl5/site_perl/5.8.8/JSON
/usr/local/lib/perl5/site_perl/5.8.8/mach/auto/JSON
/usr/local/lib/perl5/site_perl/5.8.8/JSON
/usr/local/nod32_2/lib/JSON
...
#!/usr/bin/perl -w
Код: Выделить всё
BEGIN {
# set dir for my lib (./lib/*.pm)
unshift @INC, "/usr/local/nod32_2/lib";
};
}
Не судите меня строго, Я не волшебник, а только учусь!
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
-
- проходил мимо
Re: Проба пера: статья о создании зеркала для NOD32
А этот скрипт работает с версией 2.7 или он только для 3-й,4-й ?
- tray.irk
- сержант
- Сообщения: 266
- Зарегистрирован: 2008-10-22 8:21:36
- Откуда: Иркутск
- Контактная информация:
Re: Проба пера: статья о создании зеркала для NOD32
мой работает для 2-4
Числа не управляют миром, но могут показать как управляется мир
-
- рядовой
- Сообщения: 33
- Зарегистрирован: 2009-01-27 14:55:03
- Контактная информация:
Re: Проба пера: статья о создании зеркала для NOD32
у меня вот скрипт вот с такими настройками:
как видно обновления лежат в папке и через апач все прекрасно обновляется.
но вот если я скачиваю эту папку на локальный диск и говорю антивирусу обновится с нее - обновление заканчивается неудачей. почему такое происходит?
Код: Выделить всё
#!/usr/bin/perl -w
#######################################################################
# NOD32 version 2 & 3 update mirror creator with auto keys searching #
# Created by NiTr0. #
# Changes: #
# + v2 support #
# + HTTP error processing (remove result file if error occurs) #
# + log detail level selection #
# + smart directory creation during update #
# * looking for build of modules, not version #
# * replace files with same build & mismatched size (partial #
# download or bad mirror) #
# * other small fixes #
# Based on "NOD32 version 3 update mirror creator with auto keys #
# searching" created by Cmyker aka Igorek Vokar. #
#######################################################################
use FindBin;
use lib $FindBin::Bin;
use lib $FindBin::Bin . "/lib";
use LWP::UserAgent;
use Data::Dumper;
use File::Path;
use Time::localtime;
use lib::keys;
use strict;
our $bases_path = "/usr/eset_upd"; # Path for downloaded bases
our $nolog = 0; # Write log? 0 - yes, 1 - no
our $detlog = 0; # Write detail log? 1 - yes, 0 - no
our $upd_file = "update.ver";
our $path = $FindBin::Bin;
our ($username, $password);
our $update_v2=0; # v2 mirror flag
our $update_v3=1; # v3 mirror flag
our @langs=("ENGLISH"); # Fetched localized v2 executable updates,
# if blank - fetch all
our %dirs=( v2 => "/nod_upd/", v3 => "/eset_upd/");
Код: Выделить всё
/usr/eset_upd
Код: Выделить всё
Listen 8081
<VirtualHost *:8081>
DocumentRoot "/usr/eset_upd"
<Directory /usr/eset_upd>
Options None
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>
-
- проходил мимо
Re: Проба пера: статья о создании зеркала для NOD32
Код: Выделить всё
[root@FreeBSD /usr/home/toxa]# /usr/local/nod32_upd_tools/upd.pl
binmode() on closed filehandle F at /usr/local/nod32_upd_tools/upd.pl line 116, <UPDATE> line 7015.
print() on closed filehandle F at /usr/local/nod32_upd_tools/upd.pl line 117, <UPDATE> line 7015.
binmode() on closed filehandle F at /usr/local/nod32_upd_tools/upd.pl line 116, <UPDATE> line 7015.
print() on closed filehandle F at /usr/local/nod32_upd_tools/upd.pl line 117, <UPDATE> line 7015.
-
- проходил мимо
- Сообщения: 3
- Зарегистрирован: 2010-03-12 18:44:43
- Откуда: Zp city
- Контактная информация:
Re: Проба пера: статья о создании зеркала для NOD32
Воть строки 115-118:
[/color]
Код: Выделить всё
open(F, ">$path/$file");
binmode F;
print F $res->decoded_content;
close F;
-
- мл. сержант
- Сообщения: 99
- Зарегистрирован: 2009-12-16 22:49:28
Re: Проба пера: статья о создании зеркала для NOD32
ребята помогите из скриптом
работал прекрасно стоило отлучиться на месяц и тут такая борода
не пойму что ему нужно удаляю сайт u46.eset.com то вот что отвечает
Код: Выделить всё
#!/usr/bin/perl
#
# Скрипт создания зеркала обновления вирусных баз NOD32
#
# Copyright (C) 2007-2009 HSDN <info@hsdn.org>
# http://www.hsdn.org
# ICQ: 980001
#
$LOGIN = 'EAV-29132061'; # логин
$PASS = 'tt7etccdfb'; # пароль
$PATH = "/home/www/nod"; # папка хранения зеркала
$TMP = "/home/viktor/nod/tmp"; # папка хранения временных файлов
# Серверы обновления
%servers = (
'http://u46.eset.com',
'http://u21.eset.com'
);
%versions = ("nod_upd","eset_upd"); # версии nod32
foreach $URL_UPD (%servers)
{
if($URL_UPD)
{
foreach $NUPD (%versions)
{
if($NUPD)
{
print "Using $URL_UPD/$NUPD...\n";
unlink("$TMP/$NUPD.ver","$PATH/$NUPD/update.ver");
download($PATH,"$URL_UPD/$NUPD/update.ver","/$NUPD/update.ver",$LOGIN,$PASS);
system("/usr/bin/unrar e -y $PATH/$NUPD/update.ver $TMP");
rename("$TMP/update.ver","$TMP/$NUPD.ver");
$ver = "$TMP/$NUPD.ver";
open(VER, "< $ver") or die "Couldn't open $ver for reading: $!\n";
%files = ();
%urls = ();
$end = 0;
while (defined($line = <VER>) )
{
chomp $line;
if ($line =~ /COMPATLIST/)
{
$end = 1;
}
if ($end == 0)
{
($par,$val) = split /=/, $line;
$val = substr($val, 0, -1);
if ($par =~ /file/ )
{
$name = $val;
$furl = "$URL_UPD$val";
$line = "file=$name";
}
if ($par =~/size/ )
{
$size = $val;
$files{$name} = $size;
$urls{$name} = "$furl";
}
}
}
print "\n";
close(VER);
foreach $f (keys %files)
{
if ((-s "$PATH$f") != $files{$f})
{
$size = (-s "$PATH$f");
print "$URL_UPD/$NUPD Not present --> $PATH$f\t$f\t$files{$f} ---> $size\n";
unlink("$PATH$f");
download($PATH,$urls{$f},$f,$LOGIN,$PASS);
}
else
{
print "$URL_UPD/$NUPD Present --> $PATH$f\t$f\t$files{$f}\n";
}
}
chmod(0644,"$PATH/*");
sub download()
{
my ($path, $url, $f, $login, $pass) = @_;
$dir = $f;
$dir =~s/^(.*)\/(.*)$/$1/;
system("mkdir -p $path$dir");
system("/usr/bin/wget -P $path$dir --proxy-user=user --http-user=$login --http-password=$pass $url");
}
}
}
}
}
Код: Выделить всё
viktor@debian:~/nod$ sudo ./upd.pl
Using http://u46.eset.com/nod_upd...
--2010-03-27 08:17:41-- http://u46.eset.com/nod_upd/update.ver
Распознаётся u46.eset.com... сбой: Имя или служба не известны.
wget: невозможно распознать адрес `u46.eset.com'
/usr/bin/unrar: invalid option -- y
Try `unrar --help' or `unrar --usage' for more information.
Couldn't open /home/viktor/nod/tmp/nod_upd.ver for reading: Нет такого файла или каталога
viktor@debian:~/nod$
Код: Выделить всё
viktor@debian:~/nod$ sudo ./upd.pl
Using http://u21.eset.com/nod_upd...
--2010-03-27 08:28:44-- http://u21.eset.com/nod_upd/update.ver
Распознаётся u21.eset.com... сбой: Имя или служба не известны.
wget: невозможно распознать адрес `u21.eset.com'
/usr/bin/unrar: invalid option -- y
Try `unrar --help' or `unrar --usage' for more information.
Couldn't open /home/viktor/nod/tmp/nod_upd.ver for reading: Нет такого файла или каталога
viktor@debian:~/nod$
- thefree
- лейтенант
- Сообщения: 980
- Зарегистрирован: 2008-12-29 9:23:19
- Откуда: Весёлая Страна
Re: Проба пера: статья о создании зеркала для NOD32
посмотри на параметр unrar -pthefree писал(а):upd 19/01/2009 14:45
- Версия v3 в аттачи
- Добавлен параметр к unrar our $unrar_opt = 'e -y -p- %PATHFILE% %PATHBASE% 2>/dev/null > /dev/null'; связано с тем что эти кадры стали чем то криво упаковывать базу eset_upd/v4/sky или уберите её с обновления
- еще оказался лишний трафик если качаете не wget, оказалось что размер промежуточных баз не совпадает.
Не судите меня строго, Я не волшебник, а только учусь!
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
- server801
- ст. лейтенант
- Сообщения: 1421
- Зарегистрирован: 2008-09-27 21:15:16
- Откуда: Саратов
- Контактная информация:
Re: Проба пера: статья о создании зеркала для NOD32
это проблемы не скрипта,а у нодовцев проблемы.нужно время когда все у них устаканится.viktor6 писал(а):ребята помогите из скриптомработал прекрасно стоило отлучиться на месяц и тут такая бородаКод: Выделить всё
#!/usr/bin/perl # # Скрипт создания зеркала обновления вирусных баз NOD32 # # Copyright (C) 2007-2009 HSDN <info@hsdn.org> # http://www.hsdn.org # ICQ: 980001 # $LOGIN = 'EAV-29132061'; # логин $PASS = 'tt7etccdfb'; # пароль $PATH = "/home/www/nod"; # папка хранения зеркала $TMP = "/home/viktor/nod/tmp"; # папка хранения временных файлов # Серверы обновления %servers = ( 'http://u46.eset.com', 'http://u21.eset.com' ); %versions = ("nod_upd","eset_upd"); # версии nod32 foreach $URL_UPD (%servers) { if($URL_UPD) { foreach $NUPD (%versions) { if($NUPD) { print "Using $URL_UPD/$NUPD...\n"; unlink("$TMP/$NUPD.ver","$PATH/$NUPD/update.ver"); download($PATH,"$URL_UPD/$NUPD/update.ver","/$NUPD/update.ver",$LOGIN,$PASS); system("/usr/bin/unrar e -y $PATH/$NUPD/update.ver $TMP"); rename("$TMP/update.ver","$TMP/$NUPD.ver"); $ver = "$TMP/$NUPD.ver"; open(VER, "< $ver") or die "Couldn't open $ver for reading: $!\n"; %files = (); %urls = (); $end = 0; while (defined($line = <VER>) ) { chomp $line; if ($line =~ /COMPATLIST/) { $end = 1; } if ($end == 0) { ($par,$val) = split /=/, $line; $val = substr($val, 0, -1); if ($par =~ /file/ ) { $name = $val; $furl = "$URL_UPD$val"; $line = "file=$name"; } if ($par =~/size/ ) { $size = $val; $files{$name} = $size; $urls{$name} = "$furl"; } } } print "\n"; close(VER); foreach $f (keys %files) { if ((-s "$PATH$f") != $files{$f}) { $size = (-s "$PATH$f"); print "$URL_UPD/$NUPD Not present --> $PATH$f\t$f\t$files{$f} ---> $size\n"; unlink("$PATH$f"); download($PATH,$urls{$f},$f,$LOGIN,$PASS); } else { print "$URL_UPD/$NUPD Present --> $PATH$f\t$f\t$files{$f}\n"; } } chmod(0644,"$PATH/*"); sub download() { my ($path, $url, $f, $login, $pass) = @_; $dir = $f; $dir =~s/^(.*)\/(.*)$/$1/; system("mkdir -p $path$dir"); system("/usr/bin/wget -P $path$dir --proxy-user=user --http-user=$login --http-password=$pass $url"); } } } } }
не пойму что ему нужно удаляю сайт u46.eset.com то вот что отвечаетКод: Выделить всё
viktor@debian:~/nod$ sudo ./upd.pl Using http://u46.eset.com/nod_upd... --2010-03-27 08:17:41-- http://u46.eset.com/nod_upd/update.ver Распознаётся u46.eset.com... сбой: Имя или служба не известны. wget: невозможно распознать адрес `u46.eset.com' /usr/bin/unrar: invalid option -- y Try `unrar --help' or `unrar --usage' for more information. Couldn't open /home/viktor/nod/tmp/nod_upd.ver for reading: Нет такого файла или каталога viktor@debian:~/nod$
Код: Выделить всё
viktor@debian:~/nod$ sudo ./upd.pl Using http://u21.eset.com/nod_upd... --2010-03-27 08:28:44-- http://u21.eset.com/nod_upd/update.ver Распознаётся u21.eset.com... сбой: Имя или служба не известны. wget: невозможно распознать адрес `u21.eset.com' /usr/bin/unrar: invalid option -- y Try `unrar --help' or `unrar --usage' for more information. Couldn't open /home/viktor/nod/tmp/nod_upd.ver for reading: Нет такого файла или каталога viktor@debian:~/nod$
-
- проходил мимо
Re: Проба пера: статья о создании зеркала для NOD32
Добрый день. Помогите. В чем может быть проблема ?
файл nod_upd.ver не создается.
Код: Выделить всё
Connecting to um16.eset.com|93.184.71.10|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 4001 (3.9K) [application/octet-stream]
Saving to: `/usr/local/www/apache22/data/nod_upd/update.ver'
100%[============================================================================================================>] 4,001 --.-K/s in 0s
2010-03-28 11:58:02 (7.88 MB/s) - `/usr/local/www/apache22/data/nod_upd/update.ver' saved [4001/4001]
Couldn't open /usr/local/www/apache22/data/tmp/nod_upd.ver for reading: No such file or directory
-
- проходил мимо
Re: Проба пера: статья о создании зеркала для NOD32
Прошу прошения. Вопрос снят. Забыл про unrar.dasfi писал(а):Добрый день. Помогите. В чем может быть проблема ?
файл nod_upd.ver не создается.Код: Выделить всё
Connecting to um16.eset.com|93.184.71.10|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 4001 (3.9K) [application/octet-stream] Saving to: `/usr/local/www/apache22/data/nod_upd/update.ver' 100%[============================================================================================================>] 4,001 --.-K/s in 0s 2010-03-28 11:58:02 (7.88 MB/s) - `/usr/local/www/apache22/data/nod_upd/update.ver' saved [4001/4001] Couldn't open /usr/local/www/apache22/data/tmp/nod_upd.ver for reading: No such file or directory
- tray.irk
- сержант
- Сообщения: 266
- Зарегистрирован: 2008-10-22 8:21:36
- Откуда: Иркутск
- Контактная информация:
Re: Проба пера: статья о создании зеркала для NOD32
у кого возникли проблеммы с обновами ... точнее с поиском сервера например u46.eset.com то просто необходимо сменить его на http://update.eset.com
Числа не управляют миром, но могут показать как управляется мир
-
- проходил мимо
Re: Проба пера: статья о создании зеркала для NOD32
ОО великий я саовсем забыл про этот адрес и тыкался с 1-100 в uX.eset.com - = 0)tray.irk писал(а):у кого возникли проблеммы с обновами ... точнее с поиском сервера например u46.eset.com то просто необходимо сменить его на http://update.eset.com
- tray.irk
- сержант
- Сообщения: 266
- Зарегистрирован: 2008-10-22 8:21:36
- Откуда: Иркутск
- Контактная информация:
Re: Проба пера: статья о создании зеркала для NOD32
Всегда рад помочь 

Числа не управляют миром, но могут показать как управляется мир
- monstr-sheff
- рядовой
- Сообщения: 37
- Зарегистрирован: 2006-06-16 18:55:23
- Откуда: Из глухой деревни
Re: Проба пера: статья о создании зеркала для NOD32
Всем доброго дня!!! Я использовал на протяжении 3х лет вот этот скриптик и полностью был доволен пока эти черти не поменяли всё на хрен и добавили поддержку языков (на хрена? эти языки ну да ладно) так вот прочитав и просмотрев вашу наработку я увидил что языки можно подрезать только вот как в моём скриптике помогите пожалуйста. Он меня устраивает тем что всё ложится в дну папку и потом узаки растаскивают по домам на флешка и проблем и вопросов меньше.
- Вложения
-
- upd.txt
- скриптик
- (1.71 КБ) 70 скачиваний
-
- сержант
- Сообщения: 299
- Зарегистрирован: 2006-06-02 15:38:28
- Откуда: Харьков
Re: Проба пера: статья о создании зеркала для NOD32
Я тоже уже довольно долго использую этот (или очень близкий на первый взгляд). Но вот вчера, eset что-то намутила с запаковкой файла update.ver. Попробовал обновить unrar - не помогло. На 60% распаковки пишет CRC-error. Пробовал стягивать файлик с разных серверов - не помогло.monstr-sheff писал(а):Всем доброго дня!!! Я использовал на протяжении 3х лет вот этот скриптик и полностью был доволен пока эти черти не поменяли всё на хрен и добавили поддержку языков (на хрена? эти языки ну да ладно) так вот прочитав и просмотрев вашу наработку я увидил что языки можно подрезать только вот как в моём скриптике помогите пожалуйста. Он меня устраивает тем что всё ложится в дну папку и потом узаки растаскивают по домам на флешка и проблем и вопросов меньше.
Забил ключик в сам нод и поставил выбор сервера автоматически. Он сказал, что ему очень нужно обновить какуюто компонененту, да так, что он типа полностью переустановится. Затем попросил перезагрузку. Вообщем теперь он понимает формат этих файлов (update.ver) и сам нормально их распаковывает.
Пока взял распакованный файл и подсунул скрипту. Но вот, что дальше делать блин. Каждый раз ручками подсовывать?
Похоже eset таким макаром пытается бороться с зеркалами и переходит на закрытый формат упаковки
