Перейти к содержимому
Калькуляторы

ребут сервера

Народ! Есть проблемка.. Инет получаем по радио.. когда у прова проблемы, инета, естественно, нет.. но, когда они свои проблемы решают, то сервер в большинстве случаев приходится перегружать, чтоб все завелось.. так вот.., где б достать/написать софтину/скрипт, которая бы пинговала указанный IP и при отсутствии ответа ребутила сервак.. только фишка в том, чтоб ребутила 1 раз, т.е. если у прова канал не поднялся, то чтоб сервак постоянно из-за отсутствия пинга не перегружался... и чтоб повторяло попытки через определенное время.. Может кто сталкивался с такой проблемой..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а сервер то на чем - операционка ??

Вообщето вот тебе на линуксе

 

Добавляеш в

----------------etc/crontab-----------------

* * * * * root /bin/pingwlan

----------------------------------------------

 

--------------------А вот сам скриптик pingwlan ------------------------

#!/bin/bash

(

e=$( cat /var/log/wlanstatus )

# Перев?рка з?днань та роботи wlan

 

pin=$(ping -c 1 -w 2 -U 172.17.51.123 | grep -c 100%) # перев?ря?м чи ? надпис 100%

if [ "$pin" -gt 0 ]

then

echo -ne BAD $e >> /var/log/wlanlog

date >> /var/log/wlanlog

let e=$e+1 # Раху?мо помилки

echo $e > /var/log/wlanstatus

 

else

e=0 # Скиду?м л?чильник помилок якщо вони були

echo $e > /var/log/wlanstatus

fi

 

#----------------- к?нець опитування

 

if [ $e = 5 ]

then

echo REBOOT >> /var/log/wlanlog

reboot # reboot computer !!!

fi

 

) 2> /dev/null

 

===========================================

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня FreeBSD 4.6...

Слушай, а объясни, пожалуйста, как этот скриптик вообще работает, я в этом пока не силен....

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

По всей видимости кронтаб у тебя есть ;-)

данная строчка в кронтабе запускает скриптик из директории бин

Добавляеш в

----------------etc/crontab-----------------

* * * * * root /bin/pingwlan

----------------------------------------------

 

--------------------А вот сам скриптик pingwlan ------------------------

#!/bin/bash

Это обявка скрипта что используеться шелл баш

 

(e=$( cat /var/log/wlanstatus )

это переменной "е" присваиваеться предыдущие значение сколько раз пинг не прошел до этого времени из файла вланстатус .

 

# Перев?рка з?днань та роботи wlan

pin=$(ping -c 1 -w 2 -U 172.17.51.123 | grep -c 100%) # перев?ря?м чи ? надпис 100%

 

Тут пингаеться 1 раз адресс сервера - вполне возможно что эти свичики у тебя не будут роботать - надо проставить те которые у тебя работают и адрес сервера . Командой греп ищеться надпись 100 прочентов - тойсь пакет прошел .

Некоторые особенности команды пинг в новых линуксах

 

-с 1 посылайть только один пакет

 

-w 2 - ждать две секунды

 

-U - не выводить сообщений что часы на компах не совпадают

Вот этот свичик может лажать на старых линуксах и фре

 

172.17.51.123 = ну а это адрес сервера который ты хочеш пинговать.

 

 

if [ "$pin" -gt 0 ]

если пакет не прошел - переменная рин пустая

 

then

тогда

 

echo -ne BAD $e >> /var/log/wlanlog

записать сколько пингов не прошло в лог

 

date >> /var/log/wlanlog

дописать в лог дату

 

let e=$e+1 # Раху?мо помилки

дабавить к переменной е единичку

 

echo $e > /var/log/wlanstatus

записать сколько пингов не прошло в файл статуса

 

else

Иначе

 

e=0 # Скиду?м л?чильник помилок якщо вони були

Если пинг прошел - связь возобновилась или вообще не пропадала

 

echo $e > /var/log/wlanstatus

и записать в файл

 

fi

конец условий

#----------------- к?нець опитування

 

if [ $e = 5 ]

Если мы насчитали 5 пропаданий пинга один за другим .

 

then

тогда

 

echo REBOOT >> /var/log/wlanlog

Записать в лог надпись ребут

 

reboot # reboot computer !!!

и выполнить команду ребут

 

fi

конец условий

 

) 2> /dev/null

Все выводы данной программы направлять в нуль

 

===================================

 

Я думаю нормально обьяснил ???

----

Тут еще одно дополнение .

Если комп перезагрузился и восстановление связи не произошло

он уже не ребутнеться

тойсь счетчик будет считать дальше 6-7-8-9-10-11

Для того чтобы этого не происходило надо

во время загрузки обнулить значение файла вланстатус

тойсь в линуксе это делаеться так

в файл /etc/rc.d/rc.local

дописываеться строчка

echo 0 > /var/log/wlanstatus

 

 

Ну вот и все ;-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ладно... или я дурак, или... на этом мысль останавливается... написал я вышеуказанный скрипт и сохранил под вышеуказанным названием... и что?? Как его сделать выполняемым,.. т.е. он у меня в виде текстовичка лежит...

Прошу прощения за проявленную глупость и некомпетентность...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ладно... или я дурак, или... на этом мысль останавливается... написал я вышеуказанный скрипт и сохранил под вышеуказанным названием... и что?? Как его сделать выполняемым,.. т.е. он у меня в виде текстовичка лежит...

Прошу прощения за проявленную глупость и некомпетентность...

 

Тебеж человек славянским объясняет, сунь путь скрипта в кронтаб

пускай крутится.

для забавы:

*/5 * * * * root /usr/local/bin/tvoi_script

означает запускать каждые 5 минут.

 

а вместо echo 0>wlanstatus

 

используй "cat /dev/null >/var/log/wlanstatus"

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А как этот скрипт запустить вручную? В смысле, чтоб я его запускал сам когда надо?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вручную запустить так чтобы он резидентно стоял - не выйдет .

Данный скрипт предназначен для одноразового исполнения .

 

Можно в принципе в кронтабе его включать/выключать , тойсь ремарку ставить .

так как кронтаб читаеться каждый раз через одну минуту .

Вручную то можно запустить - только он исполниться и все .

Тойсь для отладки - можно , например прописываеш неправильный адрес которого у тебя нет , и смотриш пишет тебе в лог или нет . запуская данный скрипт несколько можно проследить как он считает ...

 

Если тебе надо скрипт для того что-бы мониторить - тойсь смотреть на екране что у тебя стоит а что легло, для этого есть другой скрипт ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А зачем сервер то ребутить? я правда не когда не настраивал радиоизернет под фрей, может спицифические глюки какие нибудь, но можно же уронить интрефейс и потом его заного поднять ?! (ifconfig <interface> down )

Не дело это серваки ребутить

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А зачем сервер то ребутить? я правда не когда не настраивал радиоизернет под фрей, может спицифические глюки какие нибудь, но можно же уронить интрефейс и потом его заного поднять ?! (ifconfig <interface> down )

Не дело это серваки ребутить

 

Да можно по всякому - извращаться - если помагает , а если нет ???

 

У меня был случай когда радиокарточка заходила в ступор от микросхемки шифрации , тойсь : провайдер включил шифрацию , а карточка время от времени виснет от этого , и помогает только ребут ...

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Сирко , а я вот собираюсь себе сделать про дому радиоизернет, чтобы с ноутом можно было в любой точке дома , и огорода в инет выходить, вот что посоветуеш? из железа , чтобы под линуксом или фрей не висло

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не оно стоит очень хорошо - чаще свет виключают ..

только с шифрацией какае-то лажа .

Одно время карточка висла , чипсет призм 2.5

а вот недавно карточка на чипсете призм 2.0 начала кушать пакеты

такое впечатление что микросхемка шифрации как-то по хитрому сдохла - выключил шифрацию - все стало отлично.

 

А на счет того что брать - тяжело сказать . Бери один акцес поинт и карточку в нотебук .

 

Акцес поинт можеш брать Линксис или что-то в этом роде - стоимость в США около 100баксов .

а карточку если есть возможность найди на чипсете призм 2.0 - тогда можеш в полную силу использовать Вланексперт (програмка под виндовс)

!!! Но если под линукс и фрии - то не бери карточку с чипсетом Техас Инструмент я не встречал под них драйвера!!!!

Если есть побольше денег можеш взять карточку Вавелан

 

Ну еще посмотри в карточке как там в с внешней и внутренней антеной ...

 

А в принципе они не виснут - шифрация с ума сходит ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.