Mark Martin wrote: > On Nov 16, 2007 5:16 PM, Darren Reed <Darren.Reed at sun.com > <mailto:Darren.Reed at sun.com>> wrote: > > Nicolas Williams wrote: > > >On Fri, Nov 16, 2007 at 03:10:26PM -0800, Darren Reed wrote: > > > > > >>To add to Rainer's point, something that I see missing from > >>"enable -st" is the ability to start without all of the dependencies > >>already being "online". > >> > >> > > > >Should "start -r" mean "enable dependencies recursively" or "start > >dependencies recursively"? > > > > > > No! > > Why? > > Because maybe a service that is listed as a depedency has > failed (or cannot start or is in maintenance or whatever) > and what the administrator wants to do is start a very specific > service for whatever reason. > > To expand upon my prior email... > > For example, if nis/client has failed and name-services hasn't > been met, then doing "svcadm start inetd" will NOT get me > the result I want because the "-r" will likely crumble when it > goes back to nis/client. > > > Ok, it sounds like you're looking for a "start -i" or "enable -i" > (-i)gnore... > > Firstly, it occurs to me that how likely is it that you'll be only > transiently enabling a service with lots of dependencies. Even if you > are, can you wholesale ignore them if they exist? Again, sounds like > you're looking for an -i flag.
No, I'm looking for "-i" not to be an option and for it to be the default behaviour. > By default, start won't execute unless there are no unsatisfied > dependencies. start -r will attempt to also start the dependencies > (which I'm pretty sure is the enable -rst behaviour now -- if I'm > wrong, it'll be what enable -srt currently does). > > Initially, I was looking at this as just a bug fix, and it seemed like > low-hanging fruit because it looked like simply an alias. During the > last 2 weeks, as many have offered discussion on it, it has become > obvious that there are many impressions and connotations about what it > means to simply "start" a service ( i.e. enable only until next > reboot). It seems to me that notionally term is a holdover from > init.d rc script days, and as such, there was little in the way of > dependency marking except by way of ordering the scripts by name. You > still had the ability to start a script independently, which is what I > think you're angling towards here, right? In that case, yet again, I > think you're looking for a -i flag which I believe mimics most closely > the old notation's behavior. At best, I'd say maybe that's a useful > option, but it should still be an option. I think what you're missing is that the way in which SMF works is a serious departure from the way systems administrators have interacted with "services" on Un*x previously. At one point in time we had /etc/rc, /etc/rc.local and init scripts as being the way in which Un*xen started things up. Linux has advanced the init style, sort of, with chkconfig but the individual init scripts are still accessible. BSD has moved forward with a system that recognises dependencies for booting but otherwise supports direct access to init scripts for starting services. Windows allows enable/disable of services to be managed seperately from start/stop (although you can't start something that is disabled and has no backdoor access.) Solaris has placed svcadm in front of us and told us that we're not allowed to use the back end scripts. It's like they've cut off our hands and given us prosthetic limbs and told us they'll be sufficient, as all we need to do is get food from the plate to our mouth, right? There's an interesting intersection here for you to navigate. On the one hand, you've got the people who will potentially be using the "start" saying you're not going to deliver what they need to and on the other you've got the implementors/designers of SMF who seem somewhat supportive. Darren