Pull to refresh

Зеркало сервера обновлений ESET на Linux (упрощенный скрипт)

За основу взят скрипт из статьи Зеркало сервера обновлений ESET на Linux автора xandr0s, немного доработан и упрощен.
Если на сервере обновлений изменится структура каталогов, это не отразится на работоспособности зеркала (скрипт-основа не предусматривает того, что структура каталогов может измениться и в настоящее время уже работает не совсем корректно).

#!/bin/sh
CURDIR=/mnt/nod32upd
USERNAME="EAV-xxxxxxx"
PASSWORD="xxxxxxx"
cd $CURDIR

wget -O "$CURDIR/update.rar" "http://update.eset.com/eset_upd/update.ver"
/opt/bin/unrar e -o+ -y -c- "update.rar" 2>&1 >/dev/null

cat $CURDIR/update.ver | grep "file=" | sed -e 's/file\=/http\:\/\/um10.eset.com/' | grep -v data | sed -e 's/^M$//' > $CURDIR/urls.txt

/opt/bin/wget -x -nH --timestamping --http-user=$USERNAME --http-password=$PASSWORD --input-file=$CURDIR/urls.txt --user-agent="ESS Update (Windows; U; 32bit; VDB 7001; BPC 4.0.474.0; OS: 5.1.2600 SP 3.0 NT; CH 0.0; LNG 1049; x32c; UPD http://um10.eset.com; APP ess; BEO 1; CPU 5964; ASP 0.0)"

rm -f $CURDIR/update.ver
mv $CURDIR/update.rar $CURDIR/update.ver
rm -f $CURDIR/urls.txt

После запуска скрипта получим набор файлов обновлений в каталогах, соответствующих каталогам на сервере обновления.

Небольшой комментарий к подстроке «sed -e 's/^M$//'»: она нужна для того, чтобы удалить из строки символы переноса строк в формате DOS. Для получения последовательности ^М нужно в окошке терминала последовательно нажать Ctrl+V и Ctrl+M.

Скрипт успешно работает на роутере DIR-620 с прошивкой DD-WRT.
При этом, в DD-WRT должны быть предварительно установлены пакеты optware: wget (встроенный сильно обрезан) и unrar.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.