HELIOS Base Benutzerhandbuch


9 Der Service Controller
Der HELIOS Service Controller "srvsrv" ist eine neue Eigenschaft, die mit dieser Version der Software implementiert wurde. Er startet, beendet und überwacht alle HELIOS Serverprozesse wie "afpsrv", "pcshare", "lpd" usw. (die Grafik auf der nächsten Seite zeigt HELIOS dreistufiges Konzept zur Ausfallsicherheit der bereitgestellten Dienste).
Separate Prozesse
Mit dieser Eigenschaft wird verhindert, dass ein einziger, möglicherweise hängengebliebener, Serverprozess eines Clients alle für den jeweiligen Dienst angemeldeten Clients beeinträchtigt. Durch die Bereitstellung von einem separaten Prozess pro Client ist jeder Benutzer effektiv von allen anderen Benutzern isoliert. Je mehr Benutzer in einem Netzwerk aktiv sind, desto wichtiger wird diese Eigenschaft.
Automatischer Prozess-Neustart bei Fehlfunktionen
Der HELIOS Service Controller überwacht alle Prozesse, die auf dem Server gestartet wurden. Wenn sich ein Prozess unerwartet beendet, dann startet der HELIOS Service
Controller diesen Prozess nach einer kurzen Zeitspanne neu.
9.1 srvutil
Das Programm "srvutil" ist ein Server-Dienstprogramm, das die Steuerung einzelner HELIOS Dienste erlaubt, z. B. starten, beenden, neu konfigurieren oder einfach überwachen. Tatsächlich leitet es Anfragen an den "srvsrv"-Dämon weiter, der weiter oben beschrieben wurde.
Diese Optionen können mit dem "srvutil"-Befehl verwendet werden, mit [-f] (erzwungen) und [-r] (rekursiv):
srvutil start all (root only)
srvutil start [-r] [-f] service... (root only)
srvutil stop all (root only)
srvutil stop [-r] [-f] service... (root only)
srvutil reconf all (root only)
srvutil reconf service... (root only)
srvutil status (all users)
start -f
Startet den Dienst auch dann, wenn von ihm abhängige Dienste noch nicht verfügbar sind.
stop -f
Beendet den Dienst auch dann, wenn von ihm abhängige Dienste noch nicht beendet sind.
start -r
Startet einen Dienst und alle anderen von ihm abhängigen Dienste ebenfalls.
stop -r
Beendet einen Dienst und alle anderen von ihm abhängigen Dienste ebenfalls.
Beispiel:
cd /usr/local/helios/bin
./srvutil stop -f pcshare
Der Befehl stoppt den PCShare-Dienst (,pcshare"), obwohl der von "pcshare" abhängige Dienst "opisrv" noch läuft.
9.2 Integration zusätzlicher Dienste
Der HELIOS Service Controller kann auch dazu verwendet werden, zusätzliche Serverprozesse zu starten und zu beenden.
Wenn Sie zusätzliche Dienste in der HELIOS Software integrieren möchten, die durch den HELIOS Service
Controller verwaltet werden sollen, dann gehen Sie wie folgt vor:
-> Legen Sie eine Textdatei mit den Präferenzen für den neuen Dienst an und sichern Sie sie unter einem passenden Namen, z. B. "myservice.prefs".
Das folgende Beispiel zeigt die Präferenzen für einen neuen "lpd"-Dienst. Die Textdatei heißt "lpd.prefs":
Beispiel:
lpd.prefs
[][Services][lpd][ExecPath]
flags=0
type=String
value=[8]
sbin/lpd

[][Services][lpd][OptDependsOn]
flags=0
type=Stringlist
value=[4]
[6]atalkd
[7]desksrv
[6]afpsrv
[7]pcshare

-> Installieren Sie die Präferenzen für den neuen Dienst über den Aufruf:
prefrestore lpd.prefs
Detaillierte Informationen zu dem Befehl "prefrestore" finden Sie in Kapitel 6.9 "prefrestore".
Die Präferenzen werden mit dem nächsten "start-helios"-Aufruf verwendet.
Die Präferenzen für den HELIOS Service Controller sind in Kapitel 7.11 "Service Controller Präferenzen" aufgelistet.

© 2003 HELIOS Software GmbH