skrypty startowe

Andrzej Krzysztofowicz ankry w green.mif.pg.gda.pl
Śro, 28 Maj 2003, 11:52:50 CEST


W czasie mojego ostatniego grzebactwa w PLD-owdkich skryptach startowych
nasunelo mi sie kilka przemyslen.

1. W wielu skryptach wystepuje sekcja:

: if is_yes "${NETWORKING}"; then
:         if [ ! -f /var/lock/subsys/network ]; then
:                 msg_network_down "fetchmail"
:                 exit 1
:         fi
: else
:         exit 0
: fi

ktora powoduje, ze po wykonaniu:

<usluga> start
network stop

Nie mozna zatrzymac uslugi poleceniem "<usluga> stop", gdyz zglaszany jest
blad nieuruchomienej sieci. IMO, co najmniej dla funkcji "stop", "status"
oraz "init" (ale w tym ostatnim przypadku stosowalbym indywidualne
podejscie) brak sieci powinien byc ignorowany (nie jest wtedy tak naprawde
bledem).


2. Nie znalazlem w LSB sugestii co do poprawnego zachowania skryptu dla
uslugi, ktora sklada sie z kilku demonow a jest obslugiwana przez jeden plik
w /var/lock, w przypadku niepomyslnego startu *niektorych* demonow. 
Np. gdy startowane sa 2 demony, a wystartuje tylko pierwszy.

Nie ulega watpliwosci, ze nie jest to pomyslne wystartowanie uslugi, wiec
skrypt powinien zwrocic niezerowy kod bledu.

Ale czy w takim przypadku
- powinien byc tworzony plik lock ?
- jesli tak, to jak wylaczyc taka "nie do konca wystartowana" usluge?
  -- w funkcji start wylaczyc w przypadku bledu wszystko, co juz wystartowalo
  -- w funkcji stop ignorowac plik lock (obecnie wypisze komunikat "Service
     ... is not running") ?
  -- inaczej ? Jak ?
- jesli nie, to mamy
  -- duzo skryptow do poprawki
  -- jaja przy ponownym wywolaniu skryptu z funkcja "start"

Nie widze obecnie dobrej koncepcji rozwiazania tego problemu, ale moze ktos ma? 
Tworzenie wielu plikow lock nie zawsze jest proste do realizacji
(ich nazwy nie powinny zalezec od konfiguracji a ponadto powinny
jednoznacznie identyfikowac czego dotycza).

-- 
=======================================================================
  Andrzej M. Krzysztofowicz               ankry w mif.pg.gda.pl
  phone (48)(58) 347 14 61
Faculty of Applied Phys. & Math.,   Gdansk University of Technology



Więcej informacji o liście dyskusyjnej pld-devel-pl