Удалённая перезагрузка dir-320

Программирование на sh, быть может немного про альтернативные языки
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35476
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Удалённая перезагрузка dir-320

Непрочитанное сообщение Alex Keda » 2011-04-15 18:58:31

сабж со стандартной прошивкой.

дома за точкой стоит комп на котором ftp хранилищще бэкапов.
стал постоянно инет подлагивать - причём точка без ребута не подцепляет новый динамический адрес.
пришлось нарисовать такое вот поделие:

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

p3-800# cat /root/scripts/dir-320.reboot.sh
#!/bin/sh

PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin

login="admin"
pass="21255297a5ea"
host="192.168.254.1"

# check access point
ping -c 3 $host >/dev/null 2>&1 || exit;

# check inet
if ping -c 3 ya.ru >/dev/null 2>&1
then
        # OK
else
        cd /tmp/
        wget -S -O - --keep-session-cookies --save-cookies /tmp/.cookie --post-data "ACTION_POST=LOGIN&FILECODE=&VERIFICATION_CODE=&LOGIN_USER=$login&LOGIN_PASSWD=$pass" http://$host/login.php
        wget -S -O - --keep-session-cookies --load-cookies /tmp/.cookie "http://$host/sys_cfg_valid.xgi?&exeshell=submit%20REBOOT"
        echo "inet is down, reboot dir-320" | mail -s "reboot dir-320" root 
fi
и в крон раз в 5 минут.
наблюдаю, по результатам отпишусь
Убей их всех! Бог потом рассортирует...

Хостинговая компания 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/
Выделенные сервера, Россия, Москва, от 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/

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

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение Alex Keda » 2011-04-16 14:19:22

вторая версия.
- пропускается один цикл, если на перыдущем был ребут
- проверяется не один сайт а два, с таймаутом между проверками - для избегания ложных срабатываний в случае кратковременного пропадания инета, например.
- добавлена опция таймаута к ключам wget

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

p3-800# cat /root/scripts/dir-320.reboot.sh
#!/bin/sh

PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin

login="admin"
pass="57834273287208"
host="192.168.254.1"

lock_file="/tmp/dir-320.txt"

# check lock file
if test -f $lock_file
then
        # delete file and exit
        rm -f $lock_file
        exit
fi

# check access point
ping -c 3 $host >/dev/null 2>&1 || exit;

# check inet
if ping -c 3 ya.ru >/dev/null 2>&1
then
        # OK
else
        sleep 60
        # second check
        if ping -c 3 www.google.com >/dev/null 2>&1
        then
                # OK
        else
                cd /tmp/
                wget -S -O - --timeout=30 --keep-session-cookies --save-cookies /tmp/.cookie --post-data "ACTION_POST=LOGIN&FILECODE=&VERIFICATION_CODE=&LOGIN_USER=$login&LOGIN_PASSWD=$pass" http://$host/login.php
                wget -S -O - --timeout=30 --keep-session-cookies --load-cookies /tmp/.cookie "http://$host/sys_cfg_valid.xgi?&exeshell=submit%20REBOOT"
                echo "inet is down, reboot dir-320" | mail -s "reboot dir-320" root
                # lock file for next stage
                echo 1 > $lock_file
        fi
fi
Убей их всех! Бог потом рассортирует...

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение hizel » 2011-04-18 9:10:24

прошивка какая?
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

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

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение Alex Keda » 2011-04-18 13:27:36

штатная 1.21 чтоли
Убей их всех! Бог потом рассортирует...

Аватара пользователя
alex117
ст. сержант
Сообщения: 377
Зарегистрирован: 2010-07-30 13:25:13

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение alex117 » 2011-04-19 7:57:16

Может у тебя дело не в инете, а в роутере? На D-Link идут постоянные жалобы, что соединение рвется.

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

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение Alex Keda » 2011-04-19 9:19:48

в инете. комп с которого ватчдог смотрит - он раньше был гейтом.
было тоже самое.
Убей их всех! Бог потом рассортирует...

Аватара пользователя
FreeBSP
майор
Сообщения: 2020
Зарегистрирован: 2009-05-24 20:20:19
Откуда: Москва

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение FreeBSP » 2011-04-19 10:55:08

а перешить на ddwrt или OpenWrt не лучше? шелл будет, на нем на самом можно будет что то ковырять без ребута
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение hizel » 2011-04-19 10:58:29

да позвони уже провайдеру
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

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

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение Alex Keda » 2011-04-19 14:34:16

к нему нет физического доступа
оно на антресолях стоит.
туда лезть очень тяжело и долго.

да и менять один линух на другой - не вижу смысла
Убей их всех! Бог потом рассортирует...

Аватара пользователя
manefesto
Группенфюррер
Сообщения: 6934
Зарегистрирован: 2007-07-20 8:27:30
Откуда: Пермь
Контактная информация:

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение manefesto » 2011-04-20 13:46:06

у меня стоял последняя прошивка, но точне не та которую ты сказал, вроде повыше версия была, нормально работало на 3G!!!! модеме.
пинай прова
я такой яростный шо аж пиздеЦ
Изображение

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

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение Alex Keda » 2011-04-20 20:02:52

от мне делать больше нечего...
чем больше от него народу разбежится - тем свободней каналы будут.
а я себе костыль уже нарисовал =))
Убей их всех! Бог потом рассортирует...

ray8810
проходил мимо
Сообщения: 1
Зарегистрирован: 2013-04-29 9:53:54

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение ray8810 » 2013-04-29 10:01:50

Alex Keda писал(а):вторая версия.
- пропускается один цикл, если на перыдущем был ребут
- проверяется не один сайт а два, с таймаутом между проверками - для избегания ложных срабатываний в случае кратковременного пропадания инета, например.
- добавлена опция таймаута к ключам wget

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

p3-800# cat /root/scripts/dir-320.reboot.sh
#!/bin/sh

PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin

login="admin"
pass="57834273287208"
host="192.168.254.1"

lock_file="/tmp/dir-320.txt"

# check lock file
if test -f $lock_file
then
        # delete file and exit
        rm -f $lock_file
        exit
fi

# check access point
ping -c 3 $host >/dev/null 2>&1 || exit;

# check inet
if ping -c 3 ya.ru >/dev/null 2>&1
then
        # OK
else
        sleep 60
        # second check
        if ping -c 3 www.google.com >/dev/null 2>&1
        then
                # OK
        else
                cd /tmp/
                wget -S -O - --timeout=30 --keep-session-cookies --save-cookies /tmp/.cookie --post-data "ACTION_POST=LOGIN&FILECODE=&VERIFICATION_CODE=&LOGIN_USER=$login&LOGIN_PASSWD=$pass" http://$host/login.php
                wget -S -O - --timeout=30 --keep-session-cookies --load-cookies /tmp/.cookie "http://$host/sys_cfg_valid.xgi?&exeshell=submit%20REBOOT"
                echo "inet is down, reboot dir-320" | mail -s "reboot dir-320" root
                # lock file for next stage
                echo 1 > $lock_file
        fi
fi
Здравствуйте!

Подскажите простому юзеру :smile: Как реализовать это, хотелось бы более подробную инструкцию.
Наш роутер находится в другом конце города и переодически подвисает соединение и приходится ездить и ребутить его в ручную.

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

Re: Удалённая перезагрузка dir-320

Непрочитанное сообщение Alex Keda » 2013-04-29 10:08:01

из втнутренней сети - подобным скриптом мониторить...
ничё сложного, в общем-то
Убей их всех! Бог потом рассортирует...