Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Sep 1995 22:56:53 +1000
From:      Stephen McKay <syssgm@devetir.qld.gov.au>
To:        patl@asimov.volant.org
Cc:        syssgm@devetir.qld.gov.au, ports@freebsd.org, hackers@freebsd.org
Subject:   Re: ports startup scripts
Message-ID:  <199509211256.WAA17842@orion.devetir.qld.gov.au>

next in thread | raw e-mail | index | archive | help
patl@asimov.volant.org wrote:

>|>  I don't think that going to such a system means that we have to slavishly 
>|>  copy their every nuance.  We could easily set something like:
>|>  
>|>  0: single user
>|>  1: multiuser
>|>  2: network
>|>  3: user-custom
>
>The run levels seem have fairly standard meanings - PLEASE stick with
>the level definitions as used by Solaris, HP-UX, etc.  There is no
>excuse for gratuituous incompatability.

What do we need run levels for?  As far as I can tell, it's never done me
any good on the System V boxes I've administered.  I want single-user mode
for serious system munging, and multi-user mode for everything else.  The
rest is useless crap.  If, say, cron is spinning madly out of control and you
want it shut off, is there a run level for that?  Nope.  You just kill it
and restart it when you feel like it.  What if the printer daemon has hung.
No run level for that either.  It adds no value.

All those fiddly little scripts give me the irrits too.  Half of them run
'ps' in a reckless manner on shutdown in a hope-I-got-it-right attempt to
find the server they want to kill.  Some do that on startup too!

They are a feeble attempt at enabling and disabling services.  If we want
that sort of thing, let's build some sort of super-server (like init or inetd)
to look after them properly (plus some system admin tool to flip them on
and off, and maybe keep track of dependencies on other servers).  Let's not
embrace this particular bit of System V.

And back to the real problem: how to start services that not everyone has
installed.

I see nothing at all wrong with pkg_add editing something like /etc/rc.ports
and having /etc/rc.ports run from /etc/rc.  If you want a read-only root
filesystem, symlink /etc to some place writable first, then carry on.  You
want /etc to be read only?  How do you get anything done?  No one adds users
or changes passwords?  No alias file updates?  You must have built a custom
/etc to still be enjoying your life, so add a symlink from /etc/rc.ports to
/var/some/thing or /usr/local/whatever while you are at it.  You must have
*SOME* writable directories if you expect ports to load! :-)

Let's keep this as simple as we can.  All these grand schemes for hoards
of shell scripts called from 'for' loops make me nervous.  Is it safer in
one of the other BSD camps?  (Only kidding guys!  No rocks!  Oww!) 

Stephen McKay.				Will administrate Unix for food.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199509211256.WAA17842>