HELIOS Base User manual


9 The Service Controller
The HELIOS Service Controller "srvsrv" is a new feature which has been added to the software in this release. It starts, stops and monitors all HELIOS server processes, like "afpsrv", "pcshare", "lpd", etc. (the figure on the next page shows HELIOS' three levels of service reliability).
Separate Processes
This feature prevents a possible server process failure for a single client from bringing down all the served clients on the network. By having a separate process for each client computer, each user is effectively insulated from other users. The more users on the network, the more important this feature.
Automatic process restart on failure
The HELIOS Service Controller monitors all processes which have been started on the server. In case a process should fail, the HELIOS Service Controller restarts this process after a short time.

Third party applications can integrate their services into the HELIOS Service Controller (via preferences; see also 9.2 "Integrating additional services").

9.1 srvutil
"srvutil" is a server utility which lets you manipulate single HELIOS services, e.g. starting, stopping, reconfiguring, or just status monitoring. Actually, it passes requests to the "srvsrv " daemon which is described above.
The following options can be used with the "srvutil " command, where [-f] stands for forced; [-r] for recursive:
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
Starts service though depending services might not yet run.
stop -f
Stops service though depending services might still run.
start -r
Starts service and all other depending services.
stop -r
Stops service and all other depending services.
Example:
cd /usr/local/helios/bin
./srvutil stop -f pcshare
This command stops the PCShare service ("pcshare") though "opisrv", which depends on "pcshare", is still running.
9.2 Integrating additional services
The HELIOS Service Controller can also be used to start and stop additional server processes.
If you want to integrate additional services into the HELIOS software, which are administered by the HELIOS Service Controller, do the following:
-> Generate a text file containing the preference(s) for a new service and save it under a suitable name, e.g. "myservice.prefs".
The following example shows the preferences for a new "lpd" service. The text file is called "lpd.prefs":
Example:
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

, Install the preferences for the new service via:
prefrestore lpd.prefs
For more information on the "prefrestore" command see also 6.9 "prefrestore".
The preferences are uploaded with the next "start-helios" command.
The preferences for the HELIOS Service Controller are listed in 7.11 "Service Controller preference keys".

© 2002 HELIOS Software GmbH