ifup-ppp
Tomasz Witek
tiwek w manta.univ.gda.pl
Sob, 3 Gru 2005, 12:28:34 CET
mała poprawka która ucieszy wszystkih posiadaczy neostrady i modemu
sagem.
Problem: nie startuje siec podczas bootowania systemu.
Powod: czas pomiedzy zaladowaniem sterownika przez udev lub rc-scripty
jest zbyt krótki aby użadzenie zainicjalizowac i żeby ifup-ppp poprawnie
ruszyl.
Objawy: okolo polowa startów neostrady konczy sie podniesieniem pppd
ktory zabiera po jakims czasie wszystkie tty's bez uruchomienia pppoa
potrzebnego do poprawnego dzialania.
Rozwiazanie:
Wystarczy sprawdzic czy eaglectl -w zakonczyl sie z 0.
--- ifup-ppp.orig 2005-11-22 20:05:33.000000000 +0100
+++ ifup-ppp 2005-12-03 11:47:33.000000000 +0100
@@ -69,6 +69,17 @@
exit 1
fi
$EAGLECTRL -w
+ EAGLE_STAT=$?
+ EAGLE_COUNT=0
+ while [ $EAGLE_STAT -ne 0 -a $EAGLE_COUNT -lt 10 ]; do
+ sleep 3;
+ $EAGLECTRL -w
+ EAGLE_STAT=$?
+ EAGLE_COUNT=`expr $EAGLE_COUNT + 1`
+ done
+ if [ $EAGLE_STAT -ne 0 ]; then
+ exit 1;
+ fi
PPPOA_IFACE=$( $EAGLECTRL -i 2>/dev/null)
if [ -z "$PPPOA_IFACE" ]; then
PPPOA_IFACE="(unknown)"
Nie jest to przykład super programowania ale dziala.
Tak naprawde to ta 10 powinna byc brana z pliku konfiguracyjnego, sleep
tez jakos dobrany.
Moze to sie da zrobic bez expr i jakos ladnie i prosto, ale ja nie
potrafie. To zostawiam juz opiekunom rc-scripts.
TiweK
Więcej informacji o liście dyskusyjnej pld-devel-pl