luckymad 1) Софт которым обновляю/синхронизирую папки:
ftp://ftp.yar.ru/lftp/ саму прогу в бинарном виде, уже готовую к применению можно взять
здесь: webfile.ru/184484
выкладываешь всё из архива куданить в системную папку...чтобы винда находила экзешник это для запуска..Или в любую папку которая прописана в переменной PATH;
2) создаёшь батник который содержит в себе инструкции наподобие:
Цитата:
@echo off
::перейдём в нужную нам папку
@d:
@cd d:\_KAV_\
::удалим старый файл с логами
@del lftp_log.txt
::создадим в папке ftp файл .closed Я так понял ПерсПро проверят при обновлении..
::если он находит там этот файл то прекращает обновление с этого фтп...Типа в данный
::момент обновляюца базы на самом фтп..
@echo 1 > D:\_KAV_\ftp\.closed
:: получим базы... это собсно запускается lftp с параметрами...т.е. выполнять команды из файла
@c:\bin\misc\lftp -f script.txt
::удалим файл .closed
@del /F D:\_KAV_\ftp\.closed
3) содержимое файла script.txt
Цитата:
debug -o lftp_log.txt
open 80.239.144.77
mirror --delete --no-recursion --only-newer --parallel=10 --use-pget=2 updates50/index ftp/personalpro/index
mirror --delete --no-recursion --only-newer --parallel=10 --use-pget=2 updates50/bases/ids ftp/personalpro/bases/ids
mirror --delete --no-recursion --only-newer --parallel=10 --use-pget=2 updates50/bases/av/avc/i386 ftp/personalpro/bases/av/avc/i386
mirror --delete --no-recursion --only-newer --parallel=10 --use-pget=2 updates50/updates_ext ftp/personal
ОЧЕНЬ ВАЖНО! т.к. прога заточена изначально под Unix-based системы... то ессно она работает с файлами их типа.. Т.е. нужно в файле script.txt поправить переводы строки с DOS типа на UNIX...для этого все байты 0D 0A нужно заменить на 0A 0A... иначе прога скрипт не воспримет этот.. =)
4) Создадим батник install.bat с содержимым следующего плана:
Цитата:
::Отрубим вывод
@echo off
::Установка заданий...
at 00:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 01:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 02:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 03:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 04:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 05:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 06:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 07:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 08:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 09:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 10:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 11:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 12:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 13:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 14:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 15:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 16:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 17:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 18:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 19:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 20:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 21:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 22:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
at 23:00 /EVERY:M,T,W,Th,F,S,Su D:\_KAV_\lftp_get.cmd
И запустим его.. в результате у нас каждый час будет выполняться скрипт
D:\_KAV_\lftp_get.cmd..
Когда будете всё это пробовать на себе, не забудьте поправить пути!
5) Итак..базы у меня находятся в папка _KAV_ на диске D: Диск отформатирован как NTFS... это очень удобно. Почему? Объясняю..имею структуру папки ftp следующего плана:
bases //на самом деле это символьная линка на папку personalpro/bases
index //линка на папку personalpro/index
personal //сюда закачиваются базы для персонала...расширеные (смотрите в скрипте..можно и простые закачать)
personalpro //собсно папка про которую говорил чуть выше
updates //ссылка на папку personal
updates_ext //ссылка на папку personal
разные папки для разных версий кава используются..и чтобы не качать всё подряд несколько раз - делаю ссылку на нужную папку.. Очень удобно.
Ссылки кстати делаются в Far Manager нажатием Alt+F6 на нужной папке...Работает только на NTFS...
6) Запускаю фтп сервер, в качестве домашнего каталога указываю папку D:\_KAV_\ftp
и всё... А на клиентах настраиваю обновление на этот ftp сервер...
А! Еще... дял того, чтобы заставить персонал (НЕ ПРО!!! ) обновляться именно с этого фтп нужно выгрузить каспера и добавить в реестр следующее:
Цитата:
REGEDIT4
[-HKEY_LOCAL_MACHINE\SOFTWARE\KasperskyLab\Components\3\URL]
[HKEY_LOCAL_MACHINE\SOFTWARE\KasperskyLab\Components\3\URL]
"00"="ftp://192.168.0.2"
чтобы персонал "знал" что ему нужно обновляться с локального сервака...
В моём случае адрес фтп 192.168.0.2 в вашем могет быть другой..смотря как вы его настроите =)
Далее запускаем каспера и грим обновиться..всё должно работать..
Если же нет, смотрите логи фтп сервера, и сами поймёте где ошибка и какого файла "не видит" каспер.
Вроде всё...базы миррорятся..всё работает. То чво я тута наворотил возможно не идеально..но все компы в сети спокойно обновляются с данного фтп. И, кстати, можно расшарить просто данную папку и обновляться обычным способом.
Для чего делал символьные линки? Ну потому что разные у меня версии кава в сетке есть..есть и 4.5 есть и 5 перосонал 156 билд..есть и 5.0.227... ему чуть другую структуру нужно...есть и персонал про... И все они работают
Добавлено: Если почитать документацию по lftp то вообще можно обойтись и без добавления заданий в шедулер. В lftp есть возможность повторять какуюта команду постоянно..с заданным интервалом.. repeat называется. Удачи!