[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: upstart: please update to latest upstream version

Thomas Hood <jdthood@gmail.com> writes:

> On Thu, Feb 23, 2012 at 11:58, Goswin von Brederlow <goswin-v-b@web.de> wrote:
>> Upstart also does not support Should-Start which makes it impossible
>> to provide correct init scripts for a number of services. For example
>> autofs will not work if it uses nis because nis is not started before
>> autofs. Due to the lack of Should-Start the only way to get nis to
>> start before autofs would require autofs to depends on nis.
> Is it really impossible to implement correct behavior using Upstart?
> Or is it just inconvenient to do so?

Impossible, at least I have not found a way. The upstart syntax does not
allow for "wait for nis if nis is available", which is what autofs needs.

> Addressing partly the above and partly my own request for a technical
> comparison of Upstart and systemd, there is this:
> http://upstart.ubuntu.com/cookbook/#critique-of-dependency-based-init-systems
> --- but it doesn't go into much depth, isn't entirely unbiased and
> doesn't actually name systemd.

I think both dependencies and events have merrits. What I like in
systemd design is that it mostly removes the need for dependencies since
things simply block when they try to access something that isn't running
yet. So like with upstart events services run when their prerequisites
become available.

But for me all the new init systems have a fundamental lack: They do not
have priorities.

Say you have a desktop system but also have apache, postgresql, ... for
some developement work installed. First thing you need when you turn it
on is your desktop. The apache and postgresql do not need to be running
for you to log in and read your mail. On the other hand you do not want
to have to wait for them to start up when you first access them.

So what is needed is a priotization of services. The user specifies in
some way that X has priority and only prerequisites of that should be
started. Only once that is done other services can be started.

Similar for a server. There will be some services that are more
important to bring up than others.

This goes double for running fsck. Run it first on the filesystems
needed for the important services.


Reply to: