LINUX.ORG.RU

Переподключение wlan при разрыве

 


0

1

Вот такой скрипт запилил, запускается через post-up wlan-tester.sh wlan0 & в /etc/network/interfaces:

#!/bin/bash

sleep 3

while ( ifconfig $1 | grep RUNNING > /dev/null ) ; do
	true
done

sleep 3
ifconfig $1 down
ifdown $1
ifup $1
Но он работает через раз. Точнее, когда специально отрубить сеть - переподключается, при реальном разрыве - нет. Прошу совета у знающих людей - как это поделие школьника можно исправить, чтобы все было хорошо, вай-фай переподключался и девки давали?



Последнее исправление: overlook (всего исправлений: 1)

поставь WICD и не парься 0о

snoopcat ★★★★★
()

при реальном разрыве - нет

А теперь самое главное - чем характеризуется «реальный разрыв»?

AITap ★★★★★
()

думаю, лучше будет сцепить с ping

fragment
()
Ответ на: комментарий от overlook

Самопроизвольное отключение

В чём именно оно выражается? Каково при этом состояние интерфейса?

AITap ★★★★★
()
Ответ на: комментарий от fragment

Заменил на пинг. Попробую...

#!/bin/bash

HOST='192.168.1.1'

while ( ! ping -c1 $HOST 2>&1 | grep unreachable ) ; do
	 true	
done

sleep 3
ifdown $1
ifup $1

overlook
() автор топика

у меня в убунте все само переподключается, лол. Ставь нормальный дистрибутив

JFreeM ★★★☆
()

while ( ifconfig $1 | grep RUNNING > /dev/null ) ; do

Это загрузит процессор на 100%.

sleep 3

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

Можно использовать готовые решения: NetworkManager, wicd, а можно настроить syslog-ng (или другой демон syslog), чтобы он при появлении в логе ядра сообщения о разрыве интерфейса запускал скрипт, который перезапускает сеть (просто ifdown и ifup на интерфейс, обозначенный в логе).

gentoo_root ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.