URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 7594
[ Назад ]

Исходное сообщение
"программа которая будет ping - овать определеный ip"

Отправлено leshii_al , 18-Сен-08 11:49 
может кто нибудь может помочь или указать направление  :)

нужно программа которая будет ping - овать определеный ip и если нет связи с ним то довать на местной станции где запущена прога reboot

сам я только начинаю заниматься прогармированием под Linux :)


Содержание

Сообщения в этом обсуждении
"программа которая будет ping - овать определеный ip"
Отправлено NuINu , 18-Сен-08 12:43 
>может кто нибудь может помочь или указать направление  :)
>
>нужно программа которая будет ping - овать определеный ip и если нет
>связи с ним то довать на местной станции где запущена прога
>reboot
>
>сам я только начинаю заниматься прогармированием под Linux :)

самое простое написать оболочку для пинга, к примеру:
#! /usr/bin/perl
#check icmp network host working

use strict;

my $host = $ARGV[0] or die "Usage: ./host_active.pl 'host'\n";
my $bad_rez = 100;

my $result = `ping -c 1 $host`;

if($result =~ m/received, (\d+)% packet loss,/) {
    if($1 == $bad_rez) {
        print "Host $host die!\n";
    } else {
        print "Host $host live!\n";
    }
} else {
    print "Bad command execute!!! internal error!\n";
}



"программа которая будет ping - овать определеный ip"
Отправлено Alex_._ , 18-Сен-08 14:42 
Добавь в cron задание типа:
ping -c 1 host || reboot

"программа которая будет ping - овать определеный ip"
Отправлено leshii_al , 18-Сен-08 15:16 
Спасиб :)

"мысли вслух....."
Отправлено Andrey Mitrofanov , 16-Окт-08 22:34 
>Добавь в cron задание типа:
>ping -c 1 host || reboot

Может быть хотя бы
ping -c 1 host || ping -c 1 host || ping -c 1 host || reboot
а то, вдруг кто "файлик качать" вздумает в неудачный %) момент, а кто-то другой будет удивляться, чегой-то "местная станция" перегружается.


"мысли вслух....."
Отправлено winny , 13-Янв-09 13:06 
А вообще перезагружать сервер это извращение, как-то если падает канал можно только PPP перезагружать, и желательно писать лог, чтоб не искать посему сервер постоянно перезагружаться самопроизвольно

#! /bin/sh
host="192.168.100.3"
act="/tmp/act"
log="/var/log/routing.log"
LAN_I="eth1"
ping -c10 $host &> /dev/null
ex_code=$?
if [ $ex_code -gt 0 ]; then
if [ ! -e $act ]; then
    echo `date +%d/%m/%y%t%X`" (!) server has lost connection with host" >> $log
    echo `date +%d/%m/%y%t%X`" //server has lost connection with host"|mutt -c ХХХХХХХХХХ@sms.kyivstar.net -s "server"
    echo `date +%d/%m/%y%t%X`" //server has lost connection with host"|mutt -c user@domen.com -s "server"
    traceroute $host >> $log
    reboot

    

    touch $act;
    else
        echo `date +%d/%m/%y%t%X`"     Still no connection ..." >> $log;
        traceroute $host >> $log
        exit 0
    fi;
else
    if [ -e $act ]; then
    ((act_age=(`date +%s` - `date -r $act +%s`)/60))
    echo `date +%d/%m/%y%t%X`" (>) Have a connection on host. Inactivity time is $act_age min" >> $log
    echo `date +%d/%m/%y%t%X`" //Have connection on host.Inactivity time is $act_age min"|mutt -c  xxxxxxxxxx@sms.kyivstar.net -s "Server"
        echo `date +%d/%m/%y%t%X`" //Have connection on host.Inactivity time is $act_age min"|mutt -c  user@domen.com -s "Server"

        rm $act >> $log;
        else
        exit 0
    fi;
fi;
exit 0


"программа которая будет ping - овать определеный ip"
Отправлено vic , 13-Янв-09 14:30 
>может кто нибудь может помочь или указать направление  :)
>
>нужно программа которая будет ping - овать определеный ip и если нет
>связи с ним то довать на местной станции где запущена прога
>reboot
>
>сам я только начинаю заниматься прогармированием под Linux :)

И что интересно этот вопрос подымается с завидной регулярностью:
http://www.opennet.me/openforum/vsluhforumID9/1333.html
http://www.opennet.me/openforum/vsluhforumID9/7804.html

Либо какой-то свихнувшийся препод задает такие задания, либо это такой странный образ мышления у людей - выдирать гланды через ж* :)))


"программа которая будет ping... и смерть поколений %)"
Отправлено Andrey Mitrofanov , 13-Янв-09 15:01 
>И что интересно этот вопрос подымается с завидной регулярностью:

Хороший простой и неправильный вопрос без (правильного) ответа. Потому и регулярный.

>Либо какой-то свихнувшийся препод задает такие задания,

Предлагаю в качестве учЁбного задания обсудить написание сервиса с пингом и format c: && setupNT.exe для починки ОС. Ой, это не та "ОС"...

>либо это такой странный образ мышления у людей - выдирать гланды через ж* :)))

Как известно (поколениям юзеров), любую проблему можно решить перезагрузкой, перестановкой сервис-пака, приложения или всей системы со всеми приложениями "с нуля". Этот способ подразумевает невозможность или нежелание получения информации о причине проблемы и её использования для борьбы не со следствием, а с причиной. ... Несколько поколений пользователей должны жить и умереть _без_ Win*, наверное.