| 
  
 |  | 
 		
 		  | 
 ВНИМАНИЕ: Използвайте форумите на сайта за дa зададете вашите въпроси.
 
| Въпрос |  | От: SpoFFI | Дата: 10/05/2005 |  | 
zdraveite,
  imam sledniq vapros: nqkoi moje li da mi kaje kak da si
napravq ustroistvo, koeto da mi restartira ADSL modem.
  Primerno skript, koito da puska pingove kam dadeno IP i
ako
  pinga e neuspe6en da podava signal na LPT porta i da
resetva
 modema, molq ako nqkoi e vijdal ili e pravil podobno ne6to
neka da spodeli opita si :)
                     Predvaritelno vi blagodarq !
 
 |  
 
| Отговор #1 |  | От: Maznislav | Дата: 10/06/2005 |  | 
na LPT porta ?????
 
 |  
 
| Отговор #2 |  | От: Ivko | Дата: 10/06/2005 |  | 
if ping 182.168.42.1 -c 3 > /dev/null
        then
        echo Online >> /usr/local/apache2/htdocs/status.htm
        date >> /usr/local/apache2/htdocs/status.htm
         echo  '<br>' >>
/usr/local/apache2/htdocs/status.htm
        else
        echo Ofline
        /home/k74 set
        sleep 2
        /home/k74 clear
        sleep 1
        /home/k74 clear
        echo Ofline >> /usr/local/apache2/htdocs/status.htm
        date >> /usr/local/apache2/htdocs/status.htm
         echo '<br>' >> 
/usr/local/apache2/htdocs/status.htm
fi
tova varshi rabota. Az go polzvam da restartira wireless.
 nameri si k74 taka se kazva programata az nepomnq otkade q
svalih tq komonikira s lpt porta.
 
 |  
 
| Отговор #3 |  | От: SpoFFI | Дата: 10/07/2005 |  | 
 namerih si kakvoto mi trqbva samo nemoga da razbera kak da
opravq skripta da ne floodi tolkova mnogo 
#! /usr/bin/perl
use Net::Ping;
# DslMon.pl
# (c) 2002 Tom Wuttke -- consider this to be public domain
# http://schmail.com/dslmon
# perl script to power cycle DSL modem when net goes down
# All time in seconds
$timeToCheckStatus = 10; 
$timeToLogDown = 1;
$timeToReboot = 10;
$timeToKeepPowerOff = 10;
$timeToRebootAgain = 60 * 10;
 $modemOff = "/usr/local/bin/lptout 1"; # change these paths
for your system!!
 $modemOn = "/usr/local/bin/lptout 0"; # change these paths
for your system!!
 $mygateway = "123.123.123.123"; # put your real gateway IP
here!!!
 $mylogfile = "/var/log/dslmon.log"; # change this to suit
your needs
sub mylog
{
    my $status = shift(@_);
    my $shift = shift(@_);
    if (open(LOG,">> $mylogfile"))
    {
       $timeString = localtime(time() - $shift);
 
       print LOG "$status $timeString \n";
       close LOG;
    }
};
for(;;)
{
    $p = Net::Ping->new("icmp", 1);
    if ($p->ping($mygateway))
    {
         mylog("UP:)") if (!$started || $downTime >
$timeToLogDown);
        $downTime = 0;
        $upTime += $pollInterval;
        sleep($pollInterval);
    }
    else
    {
         mylog("DOWN", $downTime) if (!$started || $downTime
== $timeToLogDown);
        $upTime = 0;
        $downTime++;
        if ($downTime == $timeToRebootAgain)
        {
            $downTime = 1;
        }
        if ($downTime == $timeToReboot)
        {
            mylog("POFF");
             system($modemOff) == 0 or die "system $modemOff
failed: $?"  
        }
         if ($downTime == $timeToReboot +
$timeToKeepPowerOff)
        {
            mylog("PON ");
             system($modemOn) == 0 or die "system $modemOn
failed: $?"  
        }
    }
    $started = 1;
    $p->close();
}
 nqkoi ako ima ideq kak da mu ograni4a broq pingove da pomaga
PLS !
 |  
 
| Отговор #4 |  | От: фообар | Дата: 10/08/2005 |  | 
 незнам за лпт порт... но това е случай с adsl ethernet
модем.
#! /bin/sh
 declare -x
PATH='/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin'
declare -x GWIP=212.39.70.21  # router
declare -x ADSL='eth2'
 declare -x IP=`ifconfig $ADSL | grep 'inet addr' | cut -f2
-d ":" | awk '{print $1}'`
clear
echo -e "\033[1;34mADSL Link monitor \033[m\n"
restart_adsl() {
 ifconfig $ADSL down ; sleep 3 ; /usr/local/bin/dhcpcd
$ADSL;
}
the_check() {
 if [ `ping -c5 $GWIP | grep -i packet | awk '{print $4}'`
-lt "3" ] ; then
 echo -e "BAD      -------->             `date`\n" >>
/root/adsl.log ; restart_adsl
else
 echo -e "GOOD ($IP)    -------->             `date`\n" >>
/root/adsl.log ;
fi
}
( while sleep 300 ; do the_check ; done )
 |  << Ednata mi lanka q nqma! (11
) |  за компилаторите (0
)  >>
 
 |  
 			|  |  |  
 	   |  |