Зеркало обновлений NOD

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
FreePascal
сержант
Сообщения: 245
Зарегистрирован: 2006-05-14 8:50:05
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение FreePascal » 2008-01-21 18:19:55

f0s писал(а):а он тока v2 обновляят? а то у меня пишет относительно v3:

Код: Выделить всё

[f0s@mail] /root/bin/> ./nod32.sh
Обновления отсутствуют
fgrep: update.ver: No such file or directory
Не найдены URL'ы в файле filelist.upd.
я так понимаю сам он эти файлы не создает, update.ver я могу вручную сздать конечно, но где взять filelist.upd
Скрипт качает как для V2 так и для V3 без ошибок, проверено уже!!!
Скрипт реально простой ищи ошибку...
update.ver скачивается с сервера и если не найден update.ver то filelist.upd и не появится тк строится из update.ver.
Смотри скачивается ли он и в какую диру.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение f0s » 2008-01-22 10:35:02

хм.. но скрипт действительно качает теперь не только измененные файлы, а все.. вот лог, сказал много маленьких, + большой на 7,8мб для v2 и такойже бльшой для v3. вот лог с консоли:

Код: Выделить всё

100%[====================================>] 49 480       124,82K/s

10:27:03 (124,61 KB/s) - `em000_32_l0.nup' сохранён [49480/49480]

--10:27:03--  http://nod32.i-files.org/v3/em000_64_l0.nup
           => `em000_64_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 56 844 (56K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:04--  http://nod32.i-files.org/v3/em000_64_l0.nup
           => `em000_64_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 56 844 (56K) [text/plain]

100%[====================================>] 56 844        75,54K/s

10:27:04 (75,38 KB/s) - `em000_64_l0.nup' сохранён [56844/56844]

--10:27:04--  http://nod32.i-files.org/v3/em001_32_l0.nup
           => `em001_32_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 306 411 (299K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:05--  http://nod32.i-files.org/v3/em001_32_l0.nup
           => `em001_32_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 306 411 (299K) [text/plain]

100%[====================================>] 306 411       72,05K/s    ETA 00:00

10:27:11 (57,52 KB/s) - `em001_32_l0.nup' сохранён [306411/306411]

--10:27:11--  http://nod32.i-files.org/v3/em001_32_l1.nup
           => `em001_32_l1.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 8 525 (8,3K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:11--  http://nod32.i-files.org/v3/em001_32_l1.nup
           => `em001_32_l1.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 8 525 (8,3K) [text/plain]

100%[====================================>] 8 525         --.--K/s

10:27:12 (67,17 KB/s) - `em001_32_l1.nup' сохранён [8525/8525]

--10:27:12--  http://nod32.i-files.org/v3/em005_32_l0.nup
           => `em005_32_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 29 448 (29K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:12--  http://nod32.i-files.org/v3/em005_32_l0.nup
           => `em005_32_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 29 448 (29K) [text/plain]

100%[====================================>] 29 448        50,36K/s

10:27:13 (50,29 KB/s) - `em005_32_l0.nup' сохранён [29448/29448]

--10:27:13--  http://nod32.i-files.org/v3/em005_32_l1.nup
           => `em005_32_l1.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 30 681 (30K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:13--  http://nod32.i-files.org/v3/em005_32_l1.nup
           => `em005_32_l1.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 30 681 (30K) [text/plain]

100%[====================================>] 30 681        45,48K/s

10:27:15 (45,42 KB/s) - `em005_32_l1.nup' сохранён [30681/30681]

--10:27:15--  http://nod32.i-files.org/v3/em005_32_l2.nup
           => `em005_32_l2.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 4 033 (3,9K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:15--  http://nod32.i-files.org/v3/em005_32_l2.nup
           => `em005_32_l2.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 4 033 (3,9K) [text/plain]

100%[====================================>] 4 033         --.--K/s

10:27:15 (16,44 MB/s) - `em005_32_l2.nup' сохранён [4033/4033]

--10:27:15--  http://nod32.i-files.org/v3/em008_32_l0.nup
           => `em008_32_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 155 162 (152K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:15--  http://nod32.i-files.org/v3/em008_32_l0.nup
           => `em008_32_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 155 162 (152K) [text/plain]

100%[====================================>] 155 162      115,93K/s

10:27:16 (115,70 KB/s) - `em008_32_l0.nup' сохранён [155162/155162]

--10:27:16--  http://nod32.i-files.org/v3/em008_32_l1.nup
           => `em008_32_l1.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 69 893 (68K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:17--  http://nod32.i-files.org/v3/em008_32_l1.nup
           => `em008_32_l1.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 69 893 (68K) [text/plain]

100%[====================================>] 69 893        81,08K/s

10:27:18 (80,75 KB/s) - `em008_32_l1.nup' сохранён [69893/69893]

--10:27:18--  http://nod32.i-files.org/v3/em008_64_l0.nup
           => `em008_64_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 211 777 (207K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:18--  http://nod32.i-files.org/v3/em008_64_l0.nup
           => `em008_64_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 211 777 (207K) [text/plain]

100%[====================================>] 211 777       61,58K/s    ETA 00:00

10:27:21 (61,43 KB/s) - `em008_64_l0.nup' сохранён [211777/211777]

--10:27:21--  http://nod32.i-files.org/v3/em008_64_l1.nup
           => `em008_64_l1.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 95 662 (93K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:22--  http://nod32.i-files.org/v3/em008_64_l1.nup
           => `em008_64_l1.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 95 662 (93K) [text/plain]

100%[====================================>] 95 662        40,58K/s

10:27:24 (40,49 KB/s) - `em008_64_l1.nup' сохранён [95662/95662]

--10:27:24--  http://nod32.i-files.org/v3/em011_32_l0.nup
           => `em011_32_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 96 577 (94K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:24--  http://nod32.i-files.org/v3/em011_32_l0.nup
           => `em011_32_l0.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 96 577 (94K) [text/plain]

100%[====================================>] 96 577       182,63K/s

10:27:25 (182,10 KB/s) - `em011_32_l0.nup' сохранён [96577/96577]

--10:27:25--  http://nod32.i-files.org/v3/em011_32_l1.nup
           => `em011_32_l1.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 82 038 (80K) [text/plain]
Удаленный файл более новый, загружается.
--10:27:25--  http://nod32.i-files.org/v3/em011_32_l1.nup
           => `em011_32_l1.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 82 038 (80K) [text/plain]

100%[====================================>] 82 038        94,70K/s

10:27:26 (94,43 KB/s) - `em011_32_l1.nup' сохранён [82038/82038]


ЗАВЕРШЕНО --10:27:26--
Загружено: 10 279 765 байт в 20 файлах
[f0s@mail] /root/bin/>

а вот в логе однако пишется, что мол все ок, скачивается маленький файл:

Код: Выделить всё

[f0s@mail] /root/bin/> [f0s@mail] /usr/home/artpaint/www/data/nod32.artpaint/> cat updatever.log
--10:23:13--  http://nod32.i-files.org/v2/update.ver
           => `update.ver'
Распознаётся nod32.i-files.org... 212.26.141.89
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 2 847 (2,8K) [text/plain]
Удаленный файл более новый, загружается.
--10:23:13--  http://nod32.i-files.org/v2/update.ver
           => `update.ver'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 2 847 (2,8K) [text/plain]

    0K ..                                                    100%    2,47 MB/s

10:23:14 (2,47 MB/s) - `update.ver' сохранён [2847/2847]


ЗАВЕРШЕНО --10:23:14--
Загружено: 2 847 байт в 1 файлах
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
FreePascal
сержант
Сообщения: 245
Зарегистрирован: 2006-05-14 8:50:05
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение FreePascal » 2008-01-22 11:55:41

Помойму toughcat все обьяснил
http://forum.lissyara.su/viewtopic.php? ... =75#p50469

Тк имена генерятся рамдомно потому и качает заново!!!
Как проверить что мой скрипт работает?!
1. Запустить 2 раза подряд скрипт.
Второй раз точно должно появится в updatever.log чтото типа

Код: Выделить всё

--10:37:25--  http://nod32.i-files.org/v2/update.ver
           => `update.ver'
Распознаётся nod32.i-files.org... 212.26.141.89
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 2 847 (2,8K) [text/plain]
Файл на сервере не новее локального файла `update.ver' -- не загружается.

ЗАВЕРШЕНО --10:37:25--
Загружено: 0 байт в 0 файлах
Анализ етого лога не даст скрипту перейти на этап скачивания обновлений.
2. Запускаем скрипт 1 раз. Удаляем update.ver или вносим в него изменения.
В результате updatever.log, если внести изменения.

Код: Выделить всё

--10:42:59--  http://nod32.i-files.org/v2/update.ver
           => `update.ver'
Распознаётся nod32.i-files.org... 212.26.141.89
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 2 847 (2,8K) [text/plain]
Размеры файлов не совпадают (локальный размер 2851) -- загружается.
--10:42:59--  http://nod32.i-files.org/v2/update.ver
           => `update.ver'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 2 847 (2,8K) [text/plain]

    0K ..                                                    100%  163,44 KB/s

10:43:00 (163,44 KB/s) - `update.ver' сохранён [2847/2847]


ЗАВЕРШЕНО --10:43:00--
Загружено: 2 847 байт в 1 файлах
сообщает что файл изменен что приводит к запуску этапа скачавания обновлений.

Код: Выделить всё

--10:43:00--  http://nod32.i-files.org/v2/nod3C21.nup
           => `nod3C21.nup'
Распознаётся nod32.i-files.org... 212.26.141.89
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 23 017 (22K) [text/plain]
Файл на сервере не новее локального файла `nod3C21.nup' -- не загружается.
--10:43:00--  http://nod32.i-files.org/v2/nod6159.nup
           => `nod6159.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 7 573 (7,4K) [text/plain]
Файл на сервере не новее локального файла `nod6159.nup' -- не загружается.
--10:43:00--  http://nod32.i-files.org/v2/nod48AD.nup
           => `nod48AD.nup'
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 7 594 (7,4K) [text/plain]
Файл на сервере не новее локального файла `nod48AD.nup' -- не загружается.
--10:43:01--  http://nod32.i-files.org/v2/nod3C6C.nup
           => `nod3C6C.nup'
но файлы обновлений то не изменились и скачивать нечего не будем.

Раньше работало все точно так же, только не было етого 7М файла и было мало заметно!!!!
Алгоритм работы скрипта не менялся!!!!

З.Ы. Халява есть халява!!!!
Есть вариант конечно сравнивать файлы по размеру, сейчас подумаем.

Аватара пользователя
FreePascal
сержант
Сообщения: 245
Зарегистрирован: 2006-05-14 8:50:05
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение FreePascal » 2008-01-22 18:00:21

Чтото наверное страшное получилось :D
Теперь парсим update.ver и сравниваем date и size с ранее сохраненным.

Код: Выделить всё

#!/bin/sh

DMASTER="/usr/local/bin/wget"
DMLOG="updatever.log"
TMPFILE="filelist.upd"
#Фраза по которой определяем что файл не изменен
PHRASE="Файл на сервере не новее локального файла"
BASEDIR_V2="/usr/local/www/data/nodbase/v2"
BASEDIR_V3="/usr/local/www/data/nodbase/v3"
HOSTUP_V2="http://nod32.i-files.org/v2/"
HOSTUP_V3="http://nod32.i-files.org/v3/"


#$1 - BASEDIR
#$2 - HOSTUP
dUpdateVer(){
    cd $1
    $DMASTER -nd -m -o $DMLOG ${2}update.ver
    if [ -z `fgrep "$PHRASE" $DMLOG | sed -n '$='` ]; then
        cat -t update.ver | sed s/'\^M'// >updatever.new
        analyse $2
    else
        echo "Update not available"
    fi
}

analyse(){
    if [ -s updatever.tmp ]; then
    POINTER=`grep -n '\[' updatever.new | grep -o '^[0-9]*'`
    NUM_OF_STRING_P=`echo "$POINTER"|sed -n '$='`
    NUM_OF_STRING_U=`sed -n '$=' updatever.new`
    CURRENT_STRING="1"
        while [ $CURRENT_STRING -le $NUM_OF_STRING_P ]; do
            bCHAPTER=`echo "$POINTER"|sed -n $CURRENT_STRING'p'`
            if [ $CURRENT_STRING -eq $NUM_OF_STRING_P ]; then
                eCHAPTER=$NUM_OF_STRING_U
            else
                NEXTSTR=`expr $CURRENT_STRING + 1`
                eCHAPTER=`echo "$POINTER"|sed -n $NEXTSTR'p'`
                eCHAPTER=`expr $eCHAPTER - 1`
            fi

            CHAPTER=`sed "$bCHAPTER,$eCHAPTER!d" updatever.new`
            cNAME=`echo "$CHAPTER"|sed -n 1p`
            cDATE=`echo "$CHAPTER"|fgrep 'date='|sed s/'date='//g`
            cSIZE=`echo "$CHAPTER"|fgrep 'size='|sed s/'size='//g`
            cFILE=`echo "$CHAPTER"|fgrep 'file='|sed s/'file='//g`


            CURRENT_STRING_T=`fgrep -n "$cNAME" updatever.tmp|grep -o '^[0-9]*'`
                if [ $CURRENT_STRING ]; then
            bCHAPTER_T=$CURRENT_STRING_T
            CURRENT_STRING_T=`expr $CURRENT_STRING_T + 1`
                while [ $CURRENT_STRING_T -le $NUM_OF_STRING_U ]; do
                    PICK=`sed -n $CURRENT_STRING_T'p' updatever.tmp|grep -o '\['`
                    if [ $CURRENT_STRING_T -eq $NUM_OF_STRING_U ]; then
                        eCHAPTER_T=$CURRENT_STRING_T
                        break
                    fi
                    if [ $PICK ]; then
                        if [ $PICK = '[' ]; then
                            eCHAPTER_T=`expr $CURRENT_STRING_T - 1`
                            break
                        fi
                    fi
                CURRENT_STRING_T=`expr $CURRENT_STRING_T + 1`
                done

            CHAPTER_T=`sed "$bCHAPTER_T,$eCHAPTER_T!d" updatever.tmp`
            cDATE_T=`echo "$CHAPTER_T"|fgrep 'date='|sed s/'date='//g`
            cSIZE_T=`echo "$CHAPTER_T"|fgrep 'size='|sed s/'size='//g`
                else
                    "New CHAPTER"
                    echo "$cFILE" >>$TMPFILE
                fi

            if [ $cDATE != $cDATE_T ]; then
                echo "$cFILE" >>$TMPFILE
            elif [ $cSIZE != $cSIZE_T ]; then
                echo "$cFILE" >>$TMPFILE
            fi

        CURRENT_STRING=`expr $CURRENT_STRING + 1`

        done
        if [ -s $TMPFILE ]; then
            dUpdateFl $1
        else
            echo "Files not changed"
        fi
    else
        fgrep "file=" update.ver | sed -e 's/file=//' > $TMPFILE
        dUpdateFl $1
    fi
}

dUpdateFl(){
    echo "Update Downloading..."
    $DMASTER -np -N -nH -B $1 -i $TMPFILE
    mv updatever.new updatever.tmp
    rm $TMPFILE
}

dUpdateVer $BASEDIR_V2 $HOSTUP_V2
dUpdateVer $BASEDIR_V3 $HOSTUP_V3

exit 0
Советую удалить все с директориий обновления.
Ищите баги....

Аватара пользователя
freeman
лейтенант
Сообщения: 734
Зарегистрирован: 2007-03-18 5:13:25

Re: Зеркало обновлений NOD

Непрочитанное сообщение freeman » 2008-01-23 11:10:43

Ну как, кто уже потестил это что то сташное случившееся ? =)
Чего только не приходится придумать для экономии десятка мегабайт :twisted:
p.s. автору респект
Остатся должен только один ...

Аватара пользователя
demondem10
сержант
Сообщения: 284
Зарегистрирован: 2007-07-10 11:00:10
Откуда: kazakhstan

Re: Зеркало обновлений NOD

Непрочитанное сообщение demondem10 » 2008-01-23 11:47:28

А почему у меня не работает нихера, ни качает

Код: Выделить всё

ns# /usr/local/etc/rc.d/nodupdate.sh
/usr/local/etc/rc.d/nodupdate.sh: line 17: cd: /usr/local/www/apache22/data/html/dialin.kz/nodbase/v3: No such file or directory
Downloading 'update.ver' from 'http://nod32.i-files.org/v3'...
--16:49:54--  http://nod32.i-files.org/v3/update.ver
           => `v3/update.ver'
Распознаётся nod32.i-files.org... 212.26.141.89
Устанавливается соединение с nod32.i-files.org|212.26.141.89|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 4 517 (4,4K) [text/plain]

100%[================================>] 4 517         --.--K/s

16:49:56 (303,23 KB/s) - `v3/update.ver' сохранён [4517/4517]


ЗАВЕРШЕНО --16:49:56--
Загружено: 4 517 байт в 1 файлах
cat: /usr/local/www/apache22/data/html/dialin.kz/nodbase/v3/update.ver: No such file or directory
Не найдены URL'ы в файле filelist.upd.
че выкачал и че с этим делать? ктонить расскажите?
Знания принадлежат человечеству!!!

Аватара пользователя
FreePascal
сержант
Сообщения: 245
Зарегистрирован: 2006-05-14 8:50:05
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение FreePascal » 2008-01-23 13:53:15

demondem10 писал(а):А почему у меня не работает нихера, ни качает

Код: Выделить всё

ns# /usr/local/etc/rc.d/nodupdate.sh
/usr/local/etc/rc.d/nodupdate.sh: line 17: cd: /usr/local/www/apache22/data/html/dialin.kz/nodbase/v3: No such file or directory
Диры я создавать его не учил!!!!!

По поводу скрипта:
Измененные файлы он правельно определяет и качает, но теперь же нужно
создавать свой update.ver, что не было предусмотрено!!!!

Скрипт переделан, но нужно немного его пока потестить!!

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение f0s » 2008-01-23 14:35:57

скриптец запустил, он снова скачал два файла по 8 мег.. или он теперь после первого запуска - послежующие будет нормально выполнять?
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
FreePascal
сержант
Сообщения: 245
Зарегистрирован: 2006-05-14 8:50:05
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение FreePascal » 2008-01-23 16:38:03

f0s писал(а):скриптец запустил, он снова скачал два файла по 8 мег.. или он теперь после первого запуска - послежующие будет нормально выполнять?
Конечно скачал, и создал временный файл чтобы больше его не качать.
Завтра буду на работе постараюсь выделить время на доведения скрипта до ума.

ekrn.exe
проходил мимо
Сообщения: 1
Зарегистрирован: 2008-01-25 8:52:40

Re: Зеркало обновлений NOD

Непрочитанное сообщение ekrn.exe » 2008-01-25 9:25:41

f0s писал(а):какая-то лажа.. сервер nod32.i-files.org чо-то больше не обновляется.. есть другой адрес:
Товарищ, если вы будете в открытую выкладывать другой адрес на форуме, ESET и его прикроет. Уж подотрите :wink: Такие вещи через личку передают.

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение f0s » 2008-01-25 17:06:09

ekrn.exe писал(а):
f0s писал(а):какая-то лажа.. сервер nod32.i-files.org чо-то больше не обновляется.. есть другой адрес:
Товарищ, если вы будете в открытую выкладывать другой адрес на форуме, ESET и его прикроет. Уж подотрите :wink: Такие вещи через личку передают.
не особо понял, что ты хотел сказать, и вообще, мне ли это было....
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
Urgor
лейтенант
Сообщения: 663
Зарегистрирован: 2006-03-14 16:30:18
Откуда: Гилея (СПб)
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение Urgor » 2008-01-28 8:04:06

f0s писал(а):
ekrn.exe писал(а):
f0s писал(а):какая-то лажа.. сервер nod32.i-files.org чо-то больше не обновляется.. есть другой адрес:
Товарищ, если вы будете в открытую выкладывать другой адрес на форуме, ESET и его прикроет. Уж подотрите :wink: Такие вещи через личку передают.
не особо понял, что ты хотел сказать, и вообще, мне ли это было....
Он про то что нефиг палить урлы с халявными обновами. Вот тут.
Власть в руках у чужаков, и ты им платишь дань...

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение f0s » 2008-01-28 9:42:41

ок. но пароли то я не палил :) там пароль требуется для обновления...
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
FreePascal
сержант
Сообщения: 245
Зарегистрирован: 2006-05-14 8:50:05
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение FreePascal » 2008-01-28 11:51:58

Будем надеяться допилил

Код: Выделить всё

#!/bin/sh

DMASTER="/usr/local/bin/wget"
DMLOG="updatever.log"
TMPFILE="filelist.upd"
#Фраза по которой определяем что файл не изменен
#PHRASE="Файл на сервере не новее локального файла"
PHRASE="Server file no newer than local file"
BASEDIR_V2="/usr/local/www/data/nodbase/v2"
BASEDIR_V3="/usr/local/www/data/nodbase/v3"
HOSTUP_V2="http://nod32.i-files.org/v2/"
HOSTUP_V3="http://nod32.i-files.org/v3/"
VARDIR_V2="/var/nodupdate/v2"
VARDIR_V3="/var/nodupdate/v3"


#$1 - VARDIR
#$2 - HOSTUP
#$3 - BASEDIR
dUpdateVer(){
    cd $1
#По идее по завершении и при старте етого не должно быть.
    if [ -s $TMPFILE ]; then
        rm $TMPFILE
    fi
    if [ -s filelist.rm ]; then
        rm filelist.rm
    fi
    if [ -s updatever.new ]; then
        rm updatever.new
    fi
    if [ -s user_update.ver ]; then
        rm user_update.ver
    fi
    $DMASTER -nd -m -o $DMLOG ${2}update.ver
    if [ -z `fgrep "$PHRASE" $DMLOG | sed -n '$='` ]; then
        cat -t update.ver | sed s/'\^M'// >updatever.new
        analyse $2 $3
    else
        echo "Files up to date"
    fi
}

analyse(){
    if [ -s updatever.tmp ]; then
    POINTER=`grep -n '\[' updatever.new | grep -o '^[0-9]*'`
    NUM_OF_STRING_P=`echo "$POINTER"|sed -n '$='`
    NUM_OF_STRING_U=`sed -n '$=' updatever.new`
    CURRENT_STRING="1"
        while [ $CURRENT_STRING -le $NUM_OF_STRING_P ]; do
            bCHAPTER=`echo "$POINTER"|sed -n $CURRENT_STRING'p'`
            if [ $CURRENT_STRING -eq $NUM_OF_STRING_P ]; then
                eCHAPTER=$NUM_OF_STRING_U
            else
                NEXTSTR=`expr $CURRENT_STRING + 1`
                eCHAPTER=`echo "$POINTER"|sed -n $NEXTSTR'p'`
                eCHAPTER=`expr $eCHAPTER - 1`
            fi

            CHAPTER=`sed "$bCHAPTER,$eCHAPTER!d" updatever.new`
            cNAME=`echo "$CHAPTER"|sed -n 1p`
            cDATE=`echo "$CHAPTER"|fgrep 'date='|sed s/'date='//g`
            cSIZE=`echo "$CHAPTER"|fgrep 'size='|sed s/'size='//g`
            cFILE=`echo "$CHAPTER"|fgrep 'file='|sed s/'file='//g`


            CURRENT_STRING_T=`fgrep -n "$cNAME" updatever.tmp|grep -o '^[0-9]*'`
                if [ $CURRENT_STRING ]; then
            bCHAPTER_T=$CURRENT_STRING_T
            CURRENT_STRING_T=`expr $CURRENT_STRING_T + 1`
                while [ $CURRENT_STRING_T -le $NUM_OF_STRING_U ]; do
                    PICK=`sed -n $CURRENT_STRING_T'p' updatever.tmp|grep -o '\['`
                    if [ $CURRENT_STRING_T -eq $NUM_OF_STRING_U ]; then
                        eCHAPTER_T=$CURRENT_STRING_T
                        break
                    fi
                    if [ $PICK ]; then
                        if [ $PICK = '[' ]; then
                            eCHAPTER_T=`expr $CURRENT_STRING_T - 1`
                            break
                        fi
                    fi
                CURRENT_STRING_T=`expr $CURRENT_STRING_T + 1`
                done

            CHAPTER_T=`sed "$bCHAPTER_T,$eCHAPTER_T!d" updatever.tmp`
            cDATE_T=`echo "$CHAPTER_T"|fgrep 'date='|sed s/'date='//g`
            cSIZE_T=`echo "$CHAPTER_T"|fgrep 'size='|sed s/'size='//g`
            cFILE_T=`echo "$CHAPTER_T"|fgrep 'file='|sed s/'file='//g`
                else
#                   "New CHAPTER"
                    echo "$cFILE" >>$TMPFILE
                fi

            if [ $cDATE != $cDATE_T ]; then
                echo "$cFILE" >>$TMPFILE
                echo "$cFILE_T" >>filelist.rm
                echo "$CHAPTER" >>user_update.ver
            elif [ $cSIZE != $cSIZE_T ]; then
                echo "$cFILE" >>$TMPFILE
                echo "$cFILE_T" >>filelist.rm
                echo "$CHAPTER" >>user_update.ver
            else
                echo "$CHAPTER_T" >>user_update.ver
            fi

        CURRENT_STRING=`expr $CURRENT_STRING + 1`

        done

        if [ -s $TMPFILE ]; then
            dUpdateFl $1 $2
        else
            echo "Files not changed"
        fi
    else
        fgrep "file=" updatever.new | sed -e s/'file='//g > $TMPFILE
        dUpdateFl $1 $2
    fi
}

dUpdateFl(){
    echo "Update Downloading..."
    $DMASTER -np -N -nH -B $1 -i $TMPFILE
     if [ -s filelist.rm ]; then
        NUM_OF_STRING=`sed -n '$=' filelist.rm`
        CURRENT_STRING="1"
            while [ $CURRENT_STRING -le $NUM_OF_STRING ]; do
                STRING=`sed -n $CURRENT_STRING'p' filelist.rm`
                rm $2/$STRING
            CURRENT_STRING=`expr $CURRENT_STRING + 1`
            done
        rm filelist.rm
     else
        rm $2/*.nup
     fi

        NUM_OF_STRING=`sed -n '$=' $TMPFILE`
        CURRENT_STRING="1"
            while [ $CURRENT_STRING -le $NUM_OF_STRING ]; do
                STRING=`sed -n $CURRENT_STRING'p' $TMPFILE`
                mv $STRING $2
            CURRENT_STRING=`expr $CURRENT_STRING + 1`
            done

    if [ -s user_update.ver ]; then
        cp user_update.ver updatever.tmp
        mv user_update.ver $2/update.ver
    else
        cp updatever.new updatever.tmp
        cp update.ver $2/update.ver
    fi

    rm $TMPFILE
    rm updatever.new
}

dUpdateVer $VARDIR_V2 $HOSTUP_V2 $BASEDIR_V2
dUpdateVer $VARDIR_V3 $HOSTUP_V3 $BASEDIR_V3

exit 0
1. Удаляем все ваши обновления(хотя он и сам ето сделает если нет updatever.tmp).
2. Создаем все необходимые директории.
3. Запускаем скрипт(ставим в cron)

По идее скрипт будет контролировать размер и дату файлов, анализируя скачанный и ранее сохраненный update.ver.
Если дата или размер меняется то старый файл удаляется а новый загружается.
Тк имена постоянно меняются и генерятся рамдомно, а мы то оставляем неизмененные файлы нетронутыми, то в папке обновления уже
совершенно другой файл update.ver отличный от того что скачивается с сервера обновления.
P.S. Good Luck :mrgreen:

pimlab
прапорщик
Сообщения: 476
Зарегистрирован: 2007-10-09 11:31:03

Re: Зеркало обновлений NOD

Непрочитанное сообщение pimlab » 2008-02-13 17:48:55

FreePascal писал(а):Будем надеяться допилил

Код: Выделить всё

#!/bin/sh

DMASTER="/usr/local/bin/wget"
DMLOG="updatever.log"
TMPFILE="filelist.upd"
#Фраза по которой определяем что файл не изменен
#PHRASE="Файл на сервере не новее локального файла"
PHRASE="Server file no newer than local file"
BASEDIR_V2="/usr/local/www/data/nodbase/v2"
BASEDIR_V3="/usr/local/www/data/nodbase/v3"
HOSTUP_V2="http://nod32.i-files.org/v2/"
HOSTUP_V3="http://nod32.i-files.org/v3/"
VARDIR_V2="/var/nodupdate/v2"
VARDIR_V3="/var/nodupdate/v3"


#$1 - VARDIR
#$2 - HOSTUP
#$3 - BASEDIR
dUpdateVer(){
    cd $1
#По идее по завершении и при старте етого не должно быть.
    if [ -s $TMPFILE ]; then
        rm $TMPFILE
    fi
    if [ -s filelist.rm ]; then
        rm filelist.rm
    fi
    if [ -s updatever.new ]; then
        rm updatever.new
    fi
    if [ -s user_update.ver ]; then
        rm user_update.ver
    fi
    $DMASTER -nd -m -o $DMLOG ${2}update.ver
    if [ -z `fgrep "$PHRASE" $DMLOG | sed -n '$='` ]; then
        cat -t update.ver | sed s/'\^M'// >updatever.new
        analyse $2 $3
    else
        echo "Files up to date"
    fi
}

analyse(){
    if [ -s updatever.tmp ]; then
    POINTER=`grep -n '\[' updatever.new | grep -o '^[0-9]*'`
    NUM_OF_STRING_P=`echo "$POINTER"|sed -n '$='`
    NUM_OF_STRING_U=`sed -n '$=' updatever.new`
    CURRENT_STRING="1"
        while [ $CURRENT_STRING -le $NUM_OF_STRING_P ]; do
            bCHAPTER=`echo "$POINTER"|sed -n $CURRENT_STRING'p'`
            if [ $CURRENT_STRING -eq $NUM_OF_STRING_P ]; then
                eCHAPTER=$NUM_OF_STRING_U
            else
                NEXTSTR=`expr $CURRENT_STRING + 1`
                eCHAPTER=`echo "$POINTER"|sed -n $NEXTSTR'p'`
                eCHAPTER=`expr $eCHAPTER - 1`
            fi

            CHAPTER=`sed "$bCHAPTER,$eCHAPTER!d" updatever.new`
            cNAME=`echo "$CHAPTER"|sed -n 1p`
            cDATE=`echo "$CHAPTER"|fgrep 'date='|sed s/'date='//g`
            cSIZE=`echo "$CHAPTER"|fgrep 'size='|sed s/'size='//g`
            cFILE=`echo "$CHAPTER"|fgrep 'file='|sed s/'file='//g`


            CURRENT_STRING_T=`fgrep -n "$cNAME" updatever.tmp|grep -o '^[0-9]*'`
                if [ $CURRENT_STRING ]; then
            bCHAPTER_T=$CURRENT_STRING_T
            CURRENT_STRING_T=`expr $CURRENT_STRING_T + 1`
                while [ $CURRENT_STRING_T -le $NUM_OF_STRING_U ]; do
                    PICK=`sed -n $CURRENT_STRING_T'p' updatever.tmp|grep -o '\['`
                    if [ $CURRENT_STRING_T -eq $NUM_OF_STRING_U ]; then
                        eCHAPTER_T=$CURRENT_STRING_T
                        break
                    fi
                    if [ $PICK ]; then
                        if [ $PICK = '[' ]; then
                            eCHAPTER_T=`expr $CURRENT_STRING_T - 1`
                            break
                        fi
                    fi
                CURRENT_STRING_T=`expr $CURRENT_STRING_T + 1`
                done

            CHAPTER_T=`sed "$bCHAPTER_T,$eCHAPTER_T!d" updatever.tmp`
            cDATE_T=`echo "$CHAPTER_T"|fgrep 'date='|sed s/'date='//g`
            cSIZE_T=`echo "$CHAPTER_T"|fgrep 'size='|sed s/'size='//g`
            cFILE_T=`echo "$CHAPTER_T"|fgrep 'file='|sed s/'file='//g`
                else
#                   "New CHAPTER"
                    echo "$cFILE" >>$TMPFILE
                fi

            if [ $cDATE != $cDATE_T ]; then
                echo "$cFILE" >>$TMPFILE
                echo "$cFILE_T" >>filelist.rm
                echo "$CHAPTER" >>user_update.ver
            elif [ $cSIZE != $cSIZE_T ]; then
                echo "$cFILE" >>$TMPFILE
                echo "$cFILE_T" >>filelist.rm
                echo "$CHAPTER" >>user_update.ver
            else
                echo "$CHAPTER_T" >>user_update.ver
            fi

        CURRENT_STRING=`expr $CURRENT_STRING + 1`

        done

        if [ -s $TMPFILE ]; then
            dUpdateFl $1 $2
        else
            echo "Files not changed"
        fi
    else
        fgrep "file=" updatever.new | sed -e s/'file='//g > $TMPFILE
        dUpdateFl $1 $2
    fi
}

dUpdateFl(){
    echo "Update Downloading..."
    $DMASTER -np -N -nH -B $1 -i $TMPFILE
     if [ -s filelist.rm ]; then
        NUM_OF_STRING=`sed -n '$=' filelist.rm`
        CURRENT_STRING="1"
            while [ $CURRENT_STRING -le $NUM_OF_STRING ]; do
                STRING=`sed -n $CURRENT_STRING'p' filelist.rm`
                rm $2/$STRING
            CURRENT_STRING=`expr $CURRENT_STRING + 1`
            done
        rm filelist.rm
     else
        rm $2/*.nup
     fi

        NUM_OF_STRING=`sed -n '$=' $TMPFILE`
        CURRENT_STRING="1"
            while [ $CURRENT_STRING -le $NUM_OF_STRING ]; do
                STRING=`sed -n $CURRENT_STRING'p' $TMPFILE`
                mv $STRING $2
            CURRENT_STRING=`expr $CURRENT_STRING + 1`
            done

    if [ -s user_update.ver ]; then
        cp user_update.ver updatever.tmp
        mv user_update.ver $2/update.ver
    else
        cp updatever.new updatever.tmp
        cp update.ver $2/update.ver
    fi

    rm $TMPFILE
    rm updatever.new
}

dUpdateVer $VARDIR_V2 $HOSTUP_V2 $BASEDIR_V2
dUpdateVer $VARDIR_V3 $HOSTUP_V3 $BASEDIR_V3

exit 0
1. Удаляем все ваши обновления(хотя он и сам ето сделает если нет updatever.tmp).
2. Создаем все необходимые директории.
3. Запускаем скрипт(ставим в cron)

По идее скрипт будет контролировать размер и дату файлов, анализируя скачанный и ранее сохраненный update.ver.
Если дата или размер меняется то старый файл удаляется а новый загружается.
Тк имена постоянно меняются и генерятся рамдомно, а мы то оставляем неизмененные файлы нетронутыми, то в папке обновления уже
совершенно другой файл update.ver отличный от того что скачивается с сервера обновления.
P.S. Good Luck :mrgreen:
У меня к сожалению этот скрипт не заработал правильно.
Обновление скачивает, c ошибками заканчивает и update.ver -> 0kb .
Не знаю как лог с экрана показать :(
Он точно рабочий?
Другие скрипты взятые отсюда работают, единственное неудобство каждую ночь стираю полностью всю папку с update и скачиваю всё заново, а то вырастает слишком.

Аватара пользователя
helloworld
ст. сержант
Сообщения: 368
Зарегистрирован: 2007-10-03 8:06:37
Откуда: Northern Colorado

Re: Зеркало обновлений NOD

Непрочитанное сообщение helloworld » 2008-02-13 18:23:10

Я не стал изобретать велосипед, каждую ночь папка /usr/local/www/data/nod/v2 удаляется, создается, в нее качаются около 8-10 мб обновлений и так день за днем.

Код: Выделить всё

#!/bin/sh

WGET="/usr/local/bin/wget" # Путь к программе wget

WORKDIR="/usr/local/www/data/nod/v2" # Сюда мы будем ложить обновления

TMPFILE="filelist.upd" # Файл для хранения списка файлов обновлений

# Здесь нужно указать, с какого сервера брать обновления
# v2 - для 2 версии нода
# v3 - для 3 версии нода
HOST="http://nod32.i-files.org/v2/"

MSG_DOWN="Downloading 'update.ver' from '$HOST'... "

rm -R $WORKDIR
mkdir -p $WORKDIR

cd $WORKDIR

clear && echo $MSG_DOWN

$WGET -nH "${HOST}update.ver" # Скачиваем файл с сервера обновлений в котором указаны названия файлов обновлений

cat $WORKDIR/update.ver | grep "file" | sed -e 's/file=//' | sed -e 's/download/eval/' > $TMPFILE # Выбираем строки с названиями файлов

$WGET -np -N -nH -B $HOST -i filelist.upd # Качаем список файлов обновлений
rm filelist.upd

Аватара пользователя
freeman
лейтенант
Сообщения: 734
Зарегистрирован: 2007-03-18 5:13:25

Re: Зеркало обновлений NOD

Непрочитанное сообщение freeman » 2008-02-13 23:45:24

На твоём велосипеде "ездить" можно только раз в сутки, маловато будет =)
Остатся должен только один ...

Аватара пользователя
demondem10
сержант
Сообщения: 284
Зарегистрирован: 2007-07-10 11:00:10
Откуда: kazakhstan

Re: Зеркало обновлений NOD

Непрочитанное сообщение demondem10 » 2008-02-14 9:15:55

Ребяты а почему создается папка /nodbase/nod_upd/nod_upd/ в папке /nodbase/nod_upd/ и кладется туда новый фаил version. а базы для обновлений кладутся в папку выше /nodbase/nod_upd/engene0 и engene2 и пока я не скопирую из папки /nod_upd/nod_upd/ фаил version в папку /nodbase/nod_upd/ обновления для моих клиетнов не происходит , подскажите как с этим бороться?
вот скрипт

Код: Выделить всё

#!/usr/local/bin/bash

WGET="/usr/local/bin/wget" # путь к программе  wget

WORKDIR="/.../nodbase/nod_upd" # куда ложить

TMPFILE="filelist.upd" # фаилы для хронения списка выкачиваемых файлов

#HOST="http://jaf.ru/nod32up/" # от куда нуна качать обновления
#HOST="http://nod32.i-files.org/v3"
HOST="http://nod32.rekremlin.ru/nod_upd/" # от куда нуна качать обновления
#HOST="http://nyagan.ru/~gir/mirror/"
#HOST="http://ved.metroland.ru/updates/nod32/"
#HOST="http://www.vareza.net/nod32"
MSG_DOWN="Downloading 'update.ver' from '$HOST'... "

cd $WORKDIR

clear && echo $MSG_DOWN

$WGET -r -nH "$HOST/update.ver" # скачиваем файлы с сервера обновлений в котором

cat $WORKDIR/update.ver | grep "file" | sed -e 's/file=//' | sed -e 's/download/

$WGET  -np -N -nH -B $HOST -i filelist.upd # качаем список файлов обновлений

rm filelist.upd
Знания принадлежат человечеству!!!

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение f0s » 2008-02-14 11:22:10

helloworld писал(а):Я не стал изобретать велосипед, каждую ночь папка /usr/local/www/data/nod/v2 удаляется, создается, в нее качаются около 8-10 мб обновлений и так день за днем.

ну и в чем смысл твоего "скрипта"? каждый день по 8-10мб тащить...
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35071
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение Alex Keda » 2008-02-14 12:35:47

f0s писал(а):
helloworld писал(а):Я не стал изобретать велосипед, каждую ночь папка /usr/local/www/data/nod/v2 удаляется, создается, в нее качаются около 8-10 мб обновлений и так день за днем.
ну и в чем смысл твоего "скрипта"? каждый день по 8-10мб тащить...
скорей всего - в том что омжно обновлять несколько сотен клиентов с этой машины.
по трафу - полюбому выигрыш.
Убей их всех! Бог потом рассортирует...

BAV_Lug
сержант
Сообщения: 299
Зарегистрирован: 2006-06-02 15:38:28
Откуда: Харьков

Re: Зеркало обновлений NOD

Непрочитанное сообщение BAV_Lug » 2008-02-14 13:36:12

Уже месяца четыре точно, работает скрипт Urgor от 20 сентября 2007 г. 12:51 Обновляюсь с официального зеркала. Никаких проблем вообще не возникает. Трафик минимальный.

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение f0s » 2008-02-14 14:21:55

lissyara писал(а):
f0s писал(а):
helloworld писал(а):Я не стал изобретать велосипед, каждую ночь папка /usr/local/www/data/nod/v2 удаляется, создается, в нее качаются около 8-10 мб обновлений и так день за днем.
ну и в чем смысл твоего "скрипта"? каждый день по 8-10мб тащить...
скорей всего - в том что омжно обновлять несколько сотен клиентов с этой машины.
по трафу - полюбому выигрыш.
в данном случае, логичней использовать скрипт от FreePascal. Суть такая же - обновляться нескольким машинам, но тянет в день по 200кб.
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
freeman
лейтенант
Сообщения: 734
Зарегистрирован: 2007-03-18 5:13:25

Re: Зеркало обновлений NOD

Непрочитанное сообщение freeman » 2008-02-15 10:56:24

BAV_Lug писал(а):Уже месяца четыре точно, работает скрипт Urgor от 20 сентября 2007 г. 12:51 Обновляюсь с официального зеркала. Никаких проблем вообще не возникает. Трафик минимальный.
И имеешь постоянный головняк с ворованием ключей ? =)
Ну зато обновляется быстрее, тоже в общем полезный скрипт, каждый выбирает по потребностям.
Последний раз редактировалось freeman 2008-02-15 11:14:33, всего редактировалось 1 раз.
Остатся должен только один ...

Аватара пользователя
Urgor
лейтенант
Сообщения: 663
Зарегистрирован: 2006-03-14 16:30:18
Откуда: Гилея (СПб)
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение Urgor » 2008-02-15 11:12:51

freeman писал(а):
BAV_Lug писал(а):Уже месяца четыре точно, работает скрипт Urgor от 20 сентября 2007 г. 12:51 Обновляюсь с официального зеркала. Никаких проблем вообще не возникает. Трафик минимальный.
И имеешь постоянный голвняк с ворованием ключей ? =)
Н ну зато обновляется быстрее, тоже в общем полезный скрипт, каждый выбирает по потребностям.
Во-1: Что мешает обновляться с левых серваков? Да и ключик переставить раз в месяц не так уж и сложно, надо только знать где брать =) за то нет задержет и прочего гимора... ведь пока вы пилили скрипты, качали по 10 мегов за раз, у мя все обновлялось раз в три часа, и качало копейки.
Во-2: Заплатить 1500 рэ за одну лицензию и качать обновы может любая конторра, особенно если там сотни компов (или тут есть люди ваяющие зеркала для обновления двух/трех клиентов????). IMHO даже для домашней локальной сети купить одну лицензию не проблема, на 10 человек выйдет по 150 рэ, не столь большие деньги.
Власть в руках у чужаков, и ты им платишь дань...

Аватара пользователя
Urgor
лейтенант
Сообщения: 663
Зарегистрирован: 2006-03-14 16:30:18
Откуда: Гилея (СПб)
Контактная информация:

Re: Зеркало обновлений NOD

Непрочитанное сообщение Urgor » 2008-02-15 11:33:23

Вот кста, адаптированный для скачки с rekremlin.ru...

Код: Выделить всё

#!/usr/bin/perl

use LWP;

# path to store updates
$PATH="/home/www/nod";
$WGET="/usr/local/bin/wget"; # Путь к программе wget
# username/password for updates registered users
$LOGIN='none';
$PASS='none';
# URL for updates
$URL_UPD="http://nod32.rekremlin.ru/nod_upd/";

$URL_UPD =~ s/\/$//;
$URL_UPD =~ m/(.*:\/\/)(.*?)(\/.*)/;
$site = "$1$2";
if ($site =~ m//) {
  print "Enter correct URL\n";
  return;
}

unlink("$PATH/update.ver","$PATH/update.tmp");
download($PATH,"$URL_UPD/update.ver",$LOGIN,$PASS);
`/usr/local/bin/unrar e -y $PATH/update.ver $PATH 2> /dev/null`;
rename("$PATH/update.ver","$PATH/update.tmp");

$ver = "$PATH/update.tmp";
$vers = "$PATH/update.ver";

open(VER, "< $ver") or die "Couldn't open $ver for reading: $!\n";
open(VERS, "> $vers") or die "Couldn't open $vers for writing: $!\n";

%files = ();
%urls = ();

while (defined($line = <VER>) )
{
chomp $line;
($par,$val)=split /=/, $line;

$val = substr($val, 0, -1);

if ($par =~ /file/ )
{
  $name = '/'.$val;
  $name =~s/\/.*\///;
  $furl="$URL_UPD/$val";
  $line="file=$name";
}

if ($par =~/size/ )
{
  $size = $val;
  $files{$name} = $size;
  $urls{$name} = "$furl";
}

print VERS "$line\r\n";
}
print "\n";

close(VER);
close(VERS);

foreach $f (keys %files) {
  if ((-s "$PATH/$f") != $files{$f}){
    $size = (-s "$PATH/$f");
    print "Not present --> $PATH/$f\t$f\t$files{$f} ---> $size\n";
    unlink("$PATH/$f");
    download($PATH,$urls{$f},$LOGIN,$PASS);
  } else { #print "    Present --> $PATH/$f\t$f\t$files{$f}\n";
  }
}

chmod(0644,"$PATH/*");

sub download()
{
  my ($path, $url, $login, $pass) = @_;
  system("$WGET -P $path --http-user=$login --http-password=$pass $url");
}
Власть в руках у чужаков, и ты им платишь дань...