systemd: Is it wrong?

Lennart Poettering mzerqung at 0pointer.de
Mon Jul 11 14:44:17 UTC 2011


On Mon, 11.07.11 16:32, Miloslav Trmač (mitr at volny.cz) wrote:

> 
> On Mon, Jul 11, 2011 at 3:58 PM, Lennart Poettering
> <mzerqung at 0pointer.de> wrote:
> > On Sun, 10.07.11 20:49, Steve Dickson (SteveD at redhat.com) wrote:
> >> > The word "service" is mostly used synonymously with "daemon" in the
> >> > systemd context, and we prefer if people write one service file for each
> >> > daemon, as this is the easiest to understand for admins and users and
> >> > makes sure supervision/monitoring works properly.
> >>
> >> Ok.. Now understand where my confusion is... Currently when one
> >> want to start the nfs server they type 'service nfs start' which
> >> calls a number of binaries and ultimately a system daemon.
> >>
> >> Now if they enable want secure nfs, they edit a file in /etc/systconf
> >> and simply type 'service nfs restart' which again runs a number
> >> of binaries and start a couple of system daemons.
> >>
> >> My point it this. You are changing the meaning of 'service'. People
> >> expect a service to be just that as service. When one starts a
> >> service all the needed daemons are started and all the configuration
> >> is done once the service is started.
> >
> > I think most people actually expected that one service file would start
> > one service.
> 
> I think most "people" do not equate "service" with a process;

Neither does systemd. 

A service/daemon can consist of multiple processes. Examples for this
are Apache (main + worker processes + cgi scripts), Avahi (main + chroot
helper process), udev (main + worker processes + callouts), and a lot of
other stuff.

In systemd "daemon" is synonymous to "service". And a daemon/service can
consist of multiple processes, but one of those is the main one, which
defines the runtime (and traditionally is the one whose PID was stored in
the PID file). If that one exits/crashes we consider the service down,
and optionally will restart it.

Steve otoh wants one service to consist of multiple daemons, each of
which can consist of multiple processes. I find that unnecessarily
complex and this is not implemented in system, and have pointed out a
number of times why.

Lennart

-- 
Lennart Poettering - Red Hat, Inc.


More information about the devel mailing list