SPM(8) Domain/OS BSD SPM(8)
NAME
spm - start server process manager
SYNOPSIS
/sys/spm/spm [-lo priority] [-hi priority]
DESCRIPTION
The Server Process Manager, spm, allows you to create a process on a node
remote from your own. spm starts the mbx_helper program if it is not
started from the `node_data/startup.spm file.
On a Domain Server Processor (DSP), spm starts when the operating system
is loaded, and so it runs whenever the DSP is on line. When spm starts
up on a DSP, it connects its standard streams (standard input, standard
output, and standard error) to the object `node_data/dev/sio.spm. This
object is generally a link which points to one of the sio lines (for
example, /dev/sio1), perhaps one to which a dumb terminal is connected.
The link may, however, point to the pathname of an existing log file, in
which case spm messages are written to that file. If there is any error
when spm opens `node_data/dev/sio.spm, then by default the standard
streams are connected to /dev/null.
Once spm is started you can:
+ Create processes from a remote node using the shell command
crp with options similar to the Display Manager's cpo and cps commands.
The process you create may run another server, such as prsvr or netman.
The process can also run a shell program.
+ Log in to the node for debugging purposes or to maintain servers.
For example, you might want to use the shell Command sigp to stop a
process (such as a print server) running on the node.
The spm process accepts the following commands from stdin:
help Displays the following three lines
SHUT [-Force]
Shutdown the node
Quit Exit from spm to bootshell without cleanup
Shell Spawn a shell to login.
This can be useful, for example, when you have a dumb terminal attached
to one of the sio lines of a Domain Server Processor. When running in
this fashion, spm offers no prompt for command input.
Starting and Stopping spm
To start spm on your current node, use the DM command cps:
Command: cps /sys/spm/spm
The process begins immediately and continues after log out.
The spm process begins when the node is booted, and continues under
normal conditions until it is intentionally stopped with the shell
command shutspm issued in a process running on the remote node.
Once spm has started, it searches for the startup file
`node_data/startup.spm and executes any commands it finds there. This
file is a good place to put commands to create processes to run standard
servers, such as the print server (prsvr).
Startup File Operations
The `node_data/startup.spm file may contain any or all of the following
commands:
cpo pathname [options]
Create background process (quits at logout)
cps pathname [options]
Create server process (persists after logout)
env variable [value]
Set environment variables
no_stdin Disable input from standard input
no_shutspm
Disable spm shutdown via the shutspm command.
max_conc x
Specifies the maximum number of concurrent -cp backround
processes that may run on the node at once. It will not limit
sr9.7 -cp processes since there was no concept of
"interactiveness" for 9.7. x may range from 0 to any
reasonable value. The default is to allow as many processes
as are requested. Use of this option does not interfere with
the operation of OmniBack, as it does not create -cp background
processes. One suggested use is to limit the number of DSEE
builds that are supported on the node concurrently.
no_crp_me If specified, this option disallows any crp operation where the
-me option is specified, thereby forcing the user attempting to
crp on to the node to log in with an explicit password. This
provides further security from root users. The default is to
allow the -me option to be specified.
no_stdin and no_shutspm are commands recognized only by spm; they require
no arguments or options. cpo, cps, and env are DM commands; see their
individual help files for more details.
Controlling Access to a Node
spm can optionally prevent unauthorized users from creating processes on
a node or logging in. If the file `node_data/spm_control exists on the
node running spm, all process creation and login requests are validated
by login name and password and also against the file. Only users with a
valid login name, password, and a SID matching an entry in the file are
allowed access. If the file does not exist, all requests with a valid
login name and password are allowed.
If present, the control file should contain a list of SIDs, one per line,
specifying users that are authorized. Each entry should be specified as
follows:
user.group.org
where a % character in a field matches anything.
Examples:
Allow access to all users
%.%.%
Allow access to all members of group grp
%.grp.%
The Affect of Overrides on Node Access
If overrides are in effect on the node running spm (the target node), all
process creation requests are validated against the override password.
This means that:
+ If a password is overriden on the target node, the override password
must be used or access will be denied.
+ If a password is overriden to exclude logon on the target node, access
to the node will be denied.
+ If a password is overriden, the -me option to the crp command will
fail.
OPTIONS
-low n Lower boundary priority of invoked processes.
-high n Upper boundary priority of invoked processes.
SEE ALSO
shutspm for information about stopping spm.
mbx_helper for details about the mailbox server.