Michal Schmidt [Thu, 22 Sep 2011 11:10:32 +0000 (13:10 +0200)]
service: warn if a service fails to write its PID file
Warn if a service promises to write a PID file (using 'PIDFile=' in the
unit file or '# pidfile:' in SysV header), but fails to keep the
promise.
This warning will likely trigger also for the forking services with a
racy daemonization, which exit the original process before the PID file
is written.
service: if StandardInput=socket and StandardOutput=inherit imply socket for output, don't imply default output
This is useful for inetd-style per-connection services, so that they
again can simply specify StandardOutput=socket to connect all three fds
to the socket.
The mount point directory /sys/kernel/config is only created after the
module is loaded, hence there's little value in having this an automount
unit: the runtime penalty for mounting an autofs here should be the same
as for a real mount.
Michal Schmidt [Tue, 20 Sep 2011 19:43:30 +0000 (21:43 +0200)]
service: handle forking services that move to a new PID
When some forking daemons receive a SIGHUP, they re-execute themselves
and consequently change to a new main PID. As long as they update the
PID file in the right order (before exiting the old PID), we can detect
that and avoid killing them.
Michal Schmidt [Tue, 20 Sep 2011 10:28:22 +0000 (12:28 +0200)]
man: document which condition tests follow symlinks
ConditionPathExists and ConditionFileIsExecutable follow symlinks.
ConditionPathIsDirectory does not follow symlinks.
(XXX: is this actually the desired behavior?)
Michal Schmidt [Tue, 20 Sep 2011 10:11:04 +0000 (12:11 +0200)]
units: direct stdout/stderr of rescue shells to tty
With output of services going to syslog by default now, the rescue shell
units need to direct their output to tty explicitly.
Specify stderr too, just in case.
service: drop broken support for X-Interactive fields in LSB headers
The logic never worked since reading from the boot console is useless
when a service is started after boot. Hence drop this half-baked code,
since we now have a place document incompatibilities like this.
It was noted on IRC that the current layout is not necessarily the
easiest to parse by humans. I personnally struggled understanding it the
first time I read it.
Hopefully, this change makes it easier to understand.
Note: I only reformatted the information that was already present in the
documentation, I didn't add anything.
systemctl: if we managed to reexec the init system via the bus don't retry via signal
If we managed to reeexec the init system via the bus this allows us to
provide synchronous behaviour to callers. This is all lost if we then
repeat the reexecution via SIGTERM.
/run/initramfs usually contains the initrd so that we can jump back into
it on shutdown. It's usually relatively large and static data, hence we
should avoid relabelling of it. On my netbook this saves 6s. (6.6s
needed for relabelling /dev and /run goes down to 600ms -- still way too
much, but much better).
Josh Triplett [Sat, 6 Aug 2011 22:48:27 +0000 (15:48 -0700)]
tmpfiles: Move /tmp and /var/tmp to a separate tmpfiles.d file to ease overrides via /etc
Many people prefer to avoid clearing /tmp and /var/tmp, and
distributions often have explicit settings for how often to clear them
if at all. Overriding those with systemd currently requires overriding
all of /usr/lib/tmpfiles.d/systemd.conf via
/etc/tmpfiles.d/systemd.conf, copying across all the other entries, and
updating that override when systemd.conf changes.
Move the /tmp and /var/tmp entries from systemd.conf to a separate
tmp.conf, making them easier to override without affecting the rest of
systemd.conf.
exec: allow passing arbitrary path names to blkio cgroup attributes
If a device node is specified, then adjust the bandwidth/weight of it,
otherwise find the backing block device of the file system the path
refers to and adjust its bandwidth/weight.
Frederic Crozat [Thu, 18 Aug 2011 13:50:43 +0000 (15:50 +0200)]
PATCH: add missing header include
Hi,
MS_REC is not always defined in sys/mount.h. linux/fs.h should be
included, since it is always defined there.
--
Frederic Crozat <fcrozat@suse.com>
SUSE
>From 9f8a50decf45aaa4436b9fb3a0ab360f238b7d96 Mon Sep 17 00:00:00 2001
From: Frederic Crozat <fcrozat@suse.com>
Date: Thu, 18 Aug 2011 15:42:29 +0200
Subject: [PATCH] nspawn: add missing include header for MS_REC.