summaryrefslogtreecommitdiff
path: root/units
AgeCommit message (Collapse)Author
2013-08-22use CAP_MKNOD ConditionCapabilityKhem Raj
Fixes errors seen when booting VMs on QEMU like systemd[1]: kmod-static-nodes.service: main process exited, code=exited, status=203/EXEC systemd[1]: Failed to start Create list of required static device nodes for the current kernel. systemd[1]: Unit kmod-static-nodes.service entered failed state. Make sure that mknod capability is available Signed-off-by: Khem Raj <raj.khem@gmail.com>
2013-08-20units: disable kmod-static-nodes.service in containersZbigniew Jędrzejewski-Szmek
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=998122. Note: upstream kmod has a patch [1] to exit with a warning if modules.devname is missing. We could use new %v specifier to make this service conditional on the existence of this file, but this could mask a kernel installation error, hence we should let kmod run even if the file doesn't exist. [1] http://git.kernel.org/cgit/utils/kernel/kmod/kmod.git/commit/?id=ae17710117
2013-08-17udev: replace CAP_MKNOD by writable /sys conditionKay Sievers
2013-08-15units: make fsck units remain after exitZbigniew Jędrzejewski-Szmek
Without this, fsck would be re-run if any other service which pulls in a target requiring one of the mounts was started after fsck was done but before the initial transaction was done. https://bugs.freedesktop.org/show_bug.cgi?id=66784
2013-08-15typo fixes in man and commentsThomas Hindoe Paaboel Andersen
2013-08-15sysctl: allow overwriting of values specified in "later" filesKay Sievers
2013-08-14backlight: instead of syspath use sysname for identifying backlight devicesLennart Poettering
This makes the description string of the backlight service a bit nicer.
2013-08-14backlight: add minimal tool to save/restore screen brightness across rebootsLennart Poettering
As many laptops don't save/restore screen brightness across reboots, let's do this in systemd with a minimal tool, that restores the brightness as early as possible, and saves it as late as possible. This will cover consoles and graphical logins, but graphical desktops should do their own per-user stuff probably. This only touches firmware brightness controls for now.
2013-07-30core: optionally send SIGHUP in addition to the configured kill signalLennart Poettering
This is useful to fake session ends for processes like shells.
2013-07-24tmpfiles-setup: exclude /dev prefixes filesDave Reisner
Fixes Arch Linux bug: https://bugs.archlinux.org/task/36259
2013-07-22kmod-static-nodes: remain after exitTom Gundersen
2013-07-22systemd-tmpfiles-setup-dev: remain after exitTom Gundersen
Without this, tmpfiles-setpu-dev would be re-run if any other service, which pulls in basic.target, was started after setup-dev was finished and before basic.target was active.
2013-07-19machined: run machined at minimal capabilitiesLennart Poettering
2013-07-19units: add references to bus API documentation to logind+machinedLennart Poettering
2013-07-17remove /run/initramfs/root-fsck logicHarald Hoyer
dracut uses systemd in the initramfs and does not write these files anymore. The state of the root fsck is serialized.
2013-07-13units: do not special-case getty@tty1.service installationZbigniew Jędrzejewski-Szmek
Since a long while we can use "systemctl enable getty@tty1.service" which does the right thing, so there's no need to abuse Alias= for installation.
2013-07-12static-nodes: don't hardcode path to mkdirTom Gundersen
2013-07-11units: since we auto-spawn user@.service instances now we don need an ↵Lennart Poettering
[Install] section in it
2013-07-08static-nodes: move creation of static nodes from udevd to tmpfilesTom Gundersen
As of kmod v14, it is possible to export the static node information from /lib/modules/`uname -r`/modules.devname in tmpfiles.d(5) format. Use this functionality to let systemd-tmpfilesd create the static device nodes at boot, and drop the functionality from systemd-udevd. As an effect of this we can move from systemd-udevd to systemd-tmpfiles-setup-dev: * the conditional CAP_MKNOD (replaced by checking if /sys is mounted rw) * ordering before local-fs-pre.target (see 89d09e1b5c65a2d97840f682e0932c8bb499f166)
2013-07-02build-sys: work around automake issue with files with a leading '-'Kay Sievers
We should probably work around it, until it is sorted out. http://debbugs.gnu.org/cgi/bugreport.cgi?bug=14728
2013-07-02machined: split out machine registration stuff from logindLennart Poettering
Embedded folks don't need the machine registration stuff, hence it's nice to make this optional. Also, I'd expect that machinectl will grow additional commands quickly, for example to join existing containers and suchlike, hence it's better keeping that separate from loginctl.
2013-07-02logind: port over to use scopes+slices for all cgroup stuffLennart Poettering
In order to prepare things for the single-writer cgroup scheme, let's make logind use systemd's own primitives for cgroup management. Every login user now gets his own private slice unit, in which his sessions live in a scope unit each. Also, add user@$UID.service to the same slice, and implicitly start it on first login.
2013-06-27core: general cgroup reworkLennart Poettering
Replace the very generic cgroup hookup with a much simpler one. With this change only the high-level cgroup settings remain, the ability to set arbitrary cgroup attributes is removed, so is support for adding units to arbitrary cgroup controllers or setting arbitrary paths for them (especially paths that are different for the various controllers). This also introduces a new -.slice root slice, that is the parent of system.slice and friends. This enables easy admin configuration of root-level cgrouo properties. This replaces DeviceDeny= by DevicePolicy=, and implicitly adds in /dev/null, /dev/zero and friends if DeviceAllow= is used (unless this is turned off by DevicePolicy=).
2013-06-20logind: add infrastructure to keep track of machines, and move to slicesLennart Poettering
- This changes all logind cgroup objects to use slice objects rather than fixed croup locations. - logind can now collect minimal information about running VMs/containers. As fixed cgroup locations can no longer be used we need an entity that keeps track of machine cgroups in whatever slice they might be located. Since logind already keeps track of users, sessions and seats this is a trivial addition. - nspawn will now register with logind and pass various bits of metadata along. A new option "--slice=" has been added to place the container in a specific slice. - loginctl gained commands to list, introspect and terminate machines. - user.slice and machine.slice will now be pulled in by logind.service, since only logind.service requires this slice.
2013-06-18units: add default units for system.slice, user.slice, machine.sliceLennart Poettering
2013-06-04units: cleanup agetty command lineKarel Zak
* baud rate is optional and unnecessary for virtual terminals * term type is optional (default is 'linux' for virtual terminals and 'vt102' for serial lines) * long options are more user-friendly ... all this is supported since util-linux v2.20 (Aug 2011).
2013-05-16utmp: turn systemd-update-utmp-shutdown.service into a normal runtime serviceLennart Poettering
With this change systemd-update-utmp-shutdown.service is replaced by systemd-update-utmp.service which is started at boot and stays around until shutdown. This allows us to properly order the unit against both /var/log and auditd. https://bugzilla.redhat.com/show_bug.cgi?id=853104 https://bugs.freedesktop.org/show_bug.cgi?id=64365
2013-05-15units: rework systemd-random-seed-{load,save}.service to be a single serviceLennart Poettering
That way ordering it with MountsRequiredFor= works properly, as this no longer results in mount units start requests to be added to the shutdown transaction that conflict with stop requests for the same unit.
2013-05-09systemctl does not expand %u, so revert back to %IAuke Kok
The description field is only displayed by systemctl, and it can't expand %u properly (it will always display "root").
2013-04-30units: add an easy-to-use unit template file systemd-nspawn@.service for ↵Lennart Poettering
running containers as system services
2013-04-23units: update user@.service to reflect new user cgroup pathsLennart Poettering
2013-04-23man: link systemd-tmpfiles-setup-dev.serviceUmut Tezduyar
2013-04-22units: rename systemd-static-nodes -> systemd-tmpfiles-setup-devTom Gundersen
This is really just a special case of systemd-tmpfiles-setup, moreover it could easily create more than static nodes.
2013-04-17readahead: let readahead run for a little longerLennart Poettering
Especially slower systems need more than 10s for starting the session, so let's bump this to 30s.
2013-04-12bus: rename KDBUS_CMD_FNAME_POLICY_NONE -> KDBUS_CMD_FNAME_POLICY_OPENKay Sievers
2013-04-12tmpfiles: create static device nodes before udev is startedTom Gundersen
Since v183, the contents of /usr/lib/udev/devices is no longer copied to /dev on boot, rather systemd-tmpfiles should be used instead. However, as systemd-tmpfiles --create is only ran long after udevd has been started, it is no longer possible to use udev rules to assign permissions to the static nodes. This calls systemd-tmpfiles --create early, before udev is started, and restricts the call to /dev, which is known to be mounted already. In the future, this could also take over the creation of static device nodes from systemd-udevd.
2013-04-09units: fix some left-over mentions of remote-fs-setup.targetLennart Poettering
2013-04-01Do no isolate in case of emergency or severe problemsDr. Tilmann Bubeck
This patch changes local-fs.target and systemd-fsck to not use "isolate" when going into emergency. This fixes https://bugzilla.redhat.com/show_bug.cgi?id=810722 The motivation is, that when something wents wrong, we should keep everything as it is, to let the user fix the problem. When isolating we stop a lot of services and therefore change the system heavily so that it gets harder for the user to fix. An example is a crypted partition. When the fsck in a crypted partition fails, it previously used "emergency/start/isolate" which stops cryptsetup. Therefore if the user tries to fsck e.g. /dev/mapper/luks-356c20ae-c7a2-4f1c-ae1d-1d290a91b691 as printed by the failing fsck, then it will not find this device (because it got closed). So please apply this patch to let the user see the failing situation. Thanks! [zj: removed dead isolate param from start_target().] https://bugs.freedesktop.org/show_bug.cgi?id=49463 https://bugzilla.redhat.com/show_bug.cgi?id=810722
2013-03-31units/user: default.target must be isolatableZbigniew Jędrzejewski-Szmek
... Activating default unit: default.target Default target could not be isolated, starting instead: Operation refused, unit may not be isolated.
2013-03-29units: fix network-online.target fieldsLennart Poettering
2013-03-29unit: replace remote-fs-setup.target by network-online.targetLennart Poettering
https://bugzilla.redhat.com/show_bug.cgi?id=787314
2013-03-26units: disallow manual starting of passive unitsLennart Poettering
As passive units only are useful for ordering things within the initial transaction there is no point in ever activating them manually, hence refuse it.
2013-03-26units: downgrade dependency on sockets.target/timers.target/paths.target by ↵Lennart Poettering
basic.target There isn't really any need to require any targets but sysinit.target from basic.target, so downgrade sockets.target, paths.target, timers.target.
2013-03-25units: there is no point in pulling in ordering 'provides'-style targetsLennart Poettering
Units such as nss-lookup.target, nss-user-lookup.target, remote-fs-pre.target, local-fs-pre.target, time-sync.target, rpcbind.target are to be pulled in by the implementing services, and that's there only purpose. They should not have any 'active component' otherwise, so let's drop all further deps from these units.
2013-03-25units: introduce remote-fs-setup.target to pull in dependencies from remote ↵Lennart Poettering
mounts This introduces remote-fs-setup.target independently of remote-fs-pre.target. The former is only for pulling things in, the latter only for ordering. The new semantics: remote-fs-setup.target: is pulled in automatically by all remote mounts. Shall be used to pull in other units that want to run when at least one remote mount is set up. Is not ordered against the actual mount units, in order to allow activation of its dependencies even 'a posteriori', i.e. when a mount is established outside of systemd and is only picked up by it. remote-fs-pre.target: needs to be pulled in automatically by the implementing service, is otherwise not part of the initial transaction. This is ordered before all remote mount units. A service that wants to be pulled in and run before all remote mounts should hence have: a) WantedBy=remote-fs-setup.target -- so that it is pulled in b) Wants=remote-fs-pre.target + Before=remote-fs-pre.target -- so that it is ordered before the mount point, normally.
2013-03-25Revert "remote-fs.target: want remote-fs-pre.target"Lennart Poettering
This reverts commit 6bde0b3220e95a08cefb70846f73b2cf24b7734a. We should not pull in remote-fs-pre.target unconditionally. It's supposed to be pulled in by the implementors of it, rather then its users.
2013-03-25units: and also, order all early-boot sockets before sockets.targetLennart Poettering
2013-03-25units: order all udev services before sysinit.target, tooLennart Poettering
Not that it would matter much, but let's make things a bit more systematic: early boot services shall order themselves before sysinit.target, and nothing else.
2013-03-25units: introduce new timers.target and paths.target to hook timer/path units ↵Lennart Poettering
into for boot
2013-03-25build-sys: add missing sed substitution for DEBUGTTYKay Sievers