( Motorola Unix System V/88 4.0)
init ( /etc/inittab, state 2 3)
|
V
SAC (Service Access Controller) . sac(1m)
| | |
V V V
port monitor port monitor ...
| | | |
V V V V
service ...
. SAC (/etc/saf/_sysconfig)
.
(/etc/saf/< >/_config)
sacadm(1m)
pmadm(1m)
ttyadm(1m), nlsadmin(1m)
doconfig(3n), :
assign TZ=EST5EDT
runwait echo SAC is starting > /dev/console
run /usr/bin/daemon
runwait ulimit 4096
runwait umask 077
push __
(ulimit, umask, cd - )
: STARTING, ENABLED, DISABLED, STOPPING, NOTRUNNING, FAILED
SAC:
, ,
. sac: sacadm, /etc/saf/..., /var/saf/...
(PMTAG) (PMTYPE) (FLGS) (RCNT) (COMMAND)
-
- d (, )
x ( )
-
- ,
.
, (ttyadm , nlsadmin)
. : pmadm
:
# VERSION=<>
, , , , ., ..
: x ( )
u ( utmp)
.
:
. boot(1m), /etc/device-map
/usr/lib/saf/sac -t <_>
sacadm -l [ -p < > | -t < > ] # .
sacadm -a -p < > -t < > -c "<>" -v <>
[ -f [d|x] ] [ -n < > ] [ -y "<>" ]
[ -z < > ]
: -v `ttyadm -V`
sacadm -e -p < > #
sacadm -d -p < > #
sacadm -s -p < > #
sacadm -k -p < > # (kill SIGTERM)
sacadm -r -p < > #
sacadm -G [ -z < sac> ] #
sacadm -g -p < > [ -z < > ]
sacadm -x [ -p < > ] # . (
# ( )
pmadm -l [ -t < > | -p < > ] [ -s < > ]
#
pmadm -a [ -p < > | -t < > ] -s < >
-i <- > -m "<>" -v <> [ -f [x|u] ]
[ -y "" ] [ -z < > ]
# ()
pmadm -e -p < > -s < > #
pmadm -d -p < > -s < > #
pmadm -r -p < > -s < > #
pmadm -g -p < > -s < > [ -z <- . > ]
pmadm -g -t < > -s < > -z <- .>
ttymon
ttymon getty uugetty
stream-
termio(7)
BREAK , NL,
( login)
, ,
BREAK, ttymon /etc/ttydefs
autobaud - , ttymon
, NL, (5 )
,
,
, ,
!
%d
(), 0, 1 2
ldterm - line discipline module: ,
autopush(1m): -,
( . .
), (
- c_cflag IGNBRK, IGNPAR, PARMRK, INPCK
console contty ,
/etc/inittab - (. ttymon(1m)
/usr/lib/saf/ttymon -g [-h] [-d device] [-l ttylabel] [-t timeout]
[-p prompt] [-m modules] # - ( . )
/etc/inittab
:_::
: respawn -
wait -
once - ,
boot - ,
bootwait- ,
powerfail- SIGPWR
powerwait- ,
off - , ,
ondemand- respawn
inidefault- init -
6 ( )
sysinit - () -
: sh -c 'exec '
init q
sacadm -a -p < > -t ttymon -c /usr/lib/saf/ttymon -v `ttyadm -V`
pmadm -a -p < > -s < > -i root [ -f [u|x] ]
-v `ttyadm -V` -m "`ttyadm [ -b ] [ -r count ] [ -c ]
[ -h ] [ -i msg ] [ -m ldterm ] [ -p prompt ]
[ -t timeout ] -d device -l ttylabel -s /usr/bin/login`"
msg - ,
-b ( )
(BNU )
ttylabel - /etc/ttydefs ( /etc/gettydefs)
ttydefs ( , sttydefs(1m)):
:-:-:autobaud:-
- stty
-
- ,
sttydefs -l /etc/ttydefs
/usr/sbin/ttyadm [ -b ] [ -c ] [ -r count ] [ -h ] [ -i msg ] [-m modules ]
[ -p prompt ] [ -t timeout ] -d device -l ttylabel -s service
-b ( , )
-c (..
)
-d
-h , (
)
-i ,
-l /etc/ttydefs
-m STREAM-, ,
,
-r NL,
-p
-s ,
-t ,
-V
termio
, ( -
, ,
),
. , ,
, .
hungup - DTR (
)
:
-ignbrk, brkint - BREAK
-parmrk, ignpar, inpck -
-istrip, -inlcr, igncr&-icrnl / -igncr&icrnl, -iuclc - .
ixon, -ixany, ixoff - /
opost, -olcuc, onlcr, -ocrnl, -onocr, -onret - .
ofill, nl0, cr0, tab3, bs0, vt0, ff0 -
b9600 | b19200 | b38400 -
-cstopb, cread, -parenb, hupcl -
[-]clocal -
isig, icanon, -xcase, echo, echoe, echoke, echoctl - -
-flusho, -pendin, iexten -
/usr/lib/saf/listen [ -m devstem ] net_spec
listen ,
(TCP),
,
fork/exec ( FIFO
STREAM), ,
TLI ( STREAM-), RPC,
.. listen
nlsadmin
net_spec: /dev (-)
: , \x
nlsadmin -x # listen-
nlsadmin net_spec # listen-
nlsadmin -v net_spec #
nlsadmin -z _ net_spec #
nlsadmin -l net_spec #
nlsadmin -t net_spec #
nlsadmin -i net_spec # listen
#
nlsadmin -a service_code [-p modules] [-w username] -c cmd -y comment
# ; service_code : 0 100
# .; 0 - nlps ,
# ; 1 - remote login ;
#
# ,
nlsadmin -r service_code net_spec #
nlsadmin -e service_code net_spec #
nlsadmin -d service_code net_spec #
nlsadmin -s net_spec #
nlsadmin -k net_spec #
nlsadmin SAF
SAF ;
-N < >
nlsadmin -c cmd|-o pipename [-p modules] [-A address|-D]
[-R prognum:versnum]
pmadm
(-c cmd) FIFO STREAM (-o pipename)
-A
-D ; -R
rpcbinder
nlsadmin ,
listen, (
SAF).
pmadm -a -p < > -s < > -i <- >
-m "`/usr/sbin/nlsadmin <>` -v `nlsadmin -V` -y "<>"
pmadm -l -p tcp:
tcp listen 0 - root \x00020ace980a01060000000000000000 - c - /usr/lib/saf/nlps_server
# NLPS server ( listen)
tcp listen 1 - listen - c - /usr/slan/lib/ttysrv -m ntty,tirdwr,1d0
# TTY server (remote login, .. cu )
tcp listen 101 - listen - c - /usr/lib/uucp/uucico -r0 0unuucp -iTLI
# uucp access direct to server
tcp listen 102 - listen - c - /usr/slan/lib/ttysrv -d -m ntty,tirdwr,1d0
# uucp access to server via login
:
/var/saf/_log
/var/saf/< >/log
/var/saf/< >/o.log
getty [ -h ] [ -t timeout ] line [ speed [ terminal [ linedisc ] ] ]
, login
line - /dev
-h - hangup ( 0)
-t -
speed - /etc/ttydefs
terminal -
linedisc -
/usr/lib/uucp/uugetty [-t timeout] [-r] line [speed [type [linedisc] ] ]
getty,
( cu, uucico, ct). login ,
( -r) ( uugetty
). uucico
"" \r\d\r\d\r\d\r in:--in: . . .
30:2:respawn:/usr/lib/uucp/uugetty -r -t 60 tty12 1200
linedisc - LDISC0
Last-modified: Tue, 26 Aug 2003 12:29:50 GMT