Subject: Re: The new rc.d stuff...
To: John Nemeth <jnemeth@victoria.tc.ca>
From: Andrew Brown <atatat@atatdot.net>
List: current-users
Date: 04/23/2000 16:24:37
>} Which don't mean a thing when you type shutdown, you end up crafting
>} your own shutdown scripts to shut things down properly before the
>} system goes down.  Do you think an Oracle database takes kindly to
>} getting hit with a HUP signal and then being clobbered by a KILL a
>} little while later?  If that is too high faluting for you, what about
>
>     Actually, it would be TERM followed by KILL, and if it doesn't
>take kindly, then it is broken!  In fact, there is no guarantee of a
>chance to do a clean shutdown due to things like (sudden power failure,
>hardware failure, kernel panic, idiotic kernel which oversubscribes
>swap killing processes at random, sysadmin doing 'kill -9' on wrong
>process, etc.).  In otherwords, it better be prepared to go down
>without notice and have some way of coming up cleanly.  Anything less
>is a major design flaw.  There is no excuse for not shutting down
>properly upon receipt of TERM.

unless you're using every signal for some other asynchronous messaging
system.  see any version of bind from before the advent of the ndc
binary.

>} >Forward? To what? To runlevels? You're scaring me.
>} 
>} Feh - you have two at the moment, Single user and multi-user.
>
>     And, that is enough.

we have more than that.

 0) halted	(shutdown -h or halt, wait for "press any key...")
 1) single user	(kill 1 or boot -s)
 3) multi user	(a normal boot scenario)
 5) power down	(shutdown -p or halt -p, for systems that support it)
 6) rebooting	(shutdown -r or reboot)

these are all discrete run-levels (as above) in solaris.  they just
don't have the numbers associated with them in netbsd.  solaris also
has 2 (like 3, but without nfs), 4 (and alternate 3), q or Q (which is
the same as kill -1 1), and s or S (which looks very similar to 1).

the only other thing solaris does is have *other* jobs that run at the
various init levels that are started (or stopped) via inittab when at
a specific run-level.

-- 
|-----< "CODE WARRIOR" >-----|
codewarrior@daemon.org             * "ah!  i see you have the internet
twofsonet@graffiti.com (Andrew Brown)                that goes *ping*!"
andrew@crossbar.com       * "information is power -- share the wealth."