Помогите написать скрипт на перезагрузку модема

Всем доброго времени суток

Суть проблемы вот в чём

У меня ADSL модем D-Link 200 и он имеет св-во подвисать через неопределённый промежуток времени…

Для винды уже давно решение есть… там и батик написали и прогу уже давно

А вот под линуксом чё делать фиг знает…

Короче надо написать скрипт который будет пинговать… ну пусть даже тот же

192.168.0.1 каждые секунд 30 и как только

пинг будет = 0 перезагружать модем, а потом выполнять последовательность

комманд по его запуску

Вообщем я представляю как сделать только последнее…

Кто знает помогите плиз

#!/usr/bin/perl

PING:

my $out = system (“ping www.ya.ru -c 1”);

unless ($out) { sleep 30; goto PING; }

else { print “modem reboot”; };

END CODE

Пасиб

Осталось только въехать как мне перезагрузить определённое usb устройство…

Под виндой всё решалось строчкой devcon.exe restart PCI\VEN_1106

а в линуксе как???

Вот ещё вопрос…

Надо чтобы при отсутствии пинга выполнялась следующая последовательность комманд:

killall pppoeci

killall dhclient

killall pptp

startmodem

dhclient tap0

route add -host 192.168.0.1 gw 192.168.12.1

pptp 192.168.0.1 call vpn

route add default gw 85.114.172.1

route del default gw 192.168.12.1

подскажите как сделать

заранее пасиб

#!/usr/bin/perl

PING:

my $out = system (“ping www.ya.ru -c 1”);

unless ($out) { sleep 30; goto PING; }

else {

system ("

killall pppoeci

&& killall dhclient

&& killall pptp

&& startmodem

&& dhclient tap0

&& route add -host 192.168.0.1 gw 192.168.12.1

&& pptp 192.168.0.1 call vpn

&& route add default gw 85.114.172.1

&& route del default gw 192.168.12.1

")

};

END CODE

Спасибо большое

Это как раз то что было нужно…