summaryrefslogtreecommitdiff
path: root/units
AgeCommit message (Collapse)Author
2013-12-11event: hook up sd-event with the service watchdog logicLennart Poettering
Adds a new call sd_event_set_watchdog() that can be used to hook up the event loop with the watchdog supervision logic of systemd. If enabled and $WATCHDOG_USEC is set the event loop will ping the invoking systemd daemon right after coming back from epoll_wait() but not more often than $WATCHDOG_USEC/4. The epoll_wait() will sleep no longer than $WATCHDOG_USEC/4*3, to make sure the service manager is called in time. This means that setting WatchdogSec= in a .service file and calling sd_event_set_watchdog() in your daemon is enough to hook it up with the watchdog logic.
2013-12-03units: ship busname units for the bus activated services we shipLennart Poettering
2013-12-03units: install busnames.target by defaultLennart Poettering
2013-11-26core: replace OnFailureIsolate= setting by a more generic OnFailureJobMode= ↵Lennart Poettering
setting and make use of it where applicable
2013-11-23networkd: use Type=notifyTom Gundersen
Also start earlier during boot.
2013-11-21timer: make timer accuracy configurableLennart Poettering
And make it default to 1min
2013-11-09man,units: fix installation of systemd-nspawn@.service and add exampleZbigniew Jędrzejewski-Szmek
2013-11-09networkd: add a basic network daemonTom Gundersen
This daemon listens for and configures network devices tagged with 'systemd-networkd'. By default, no devices are tagged so this daemon can safely run in parallel with existing network daemons/scripts. Networks are configured in /etc/systemd/network/*.network. The first .network file that matches a given link is applied. The matching logic is similar to the one for .link files, but additionally supports matching on interface name. The mid-term aim is to provide an alternative to ad-hoc scripts currently used in initrd's and for wired setups that don't change much (e.g., as seen on servers/and some embedded systems). Currently, static addresses and a gateway can be configured. Example .network file: [Match] Name=wlp2s0 [Network] Description=My Network Gateway=192.168.1.1 Address=192.168.1.23/24 Address=fe80::9aee:94ff:fe3f:c618/64
2013-10-31machinectl: add new command to spawn a getty inside a containerLennart Poettering
2013-10-19Remove FsckPassNo from systemd-fsck-root.serviceThomas Bächler
2013-10-19fstab-generator: Generate explicit dependencies on systemd-fsck@.service ↵Thomas Bächler
instead of using FsckPassNo [tomegun: * order all fsck instances after fsck-root * check for OOM * added notes in the manpages]
2013-10-17static-nodes: don't call mkdirTom Gundersen
This is no longer necessary with kmod-15. Bump the requirement.
2013-10-14rfkill: add new rfkill tool to save/restore rfkill state across rebootsLennart Poettering
This works analogous to the existing backlight and random seed services
2013-10-02execute.c: always set $SHELLZbigniew Jędrzejewski-Szmek
In e6dca81 $SHELL was added to user@.service. Let's instead provide it to all units which have a user.
2013-10-02fix lingering references to /var/lib/{backlight,random-seed}Dave Reisner
This should have been part of ef5bfcf668e6029faa78534dfe.
2013-10-01logind: run with CAP_SYS_ADMINDavid Herrmann
DRM Master access requires CAP_SYS_ADMIN, yay! Add it to the capability bounding set for systemd-logind. As CAP_SYS_ADMIN actually allows a huge set of actions, this mostly renders the restriction-set useless. Anyway, patches are already pending to reduce the restriction on the kernel side. But these won't really make it into any stable-release so for now we're stuck with CAP_SYS_ADMIN.
2013-10-01units: Add SHELL environment variableEvan Callicoat
With the advent of systemd --user sessions, it's become very interesting to spawn X as a user unit, as well as accompanying processes that may have previously been in a .xinitrc/.xsession, or even just to replace a collection of XDG/GDM/KDM/etc session files with independent systemd --user units. The simplest case here would be to login on a tty, with the traditional /usr/sbin/login "login manager". However, systemd --user (spawned by user@.service) is at the top level of the slice for the user, and does not inherit any environment variables from the login process. Given the number of common applications which rely on SHELL being set in the environment, it seems like the cleanest way to provide this variable is to set it to %s in the user@.service. Ideally in the long-term, applications which rely on SHELL being set should be fixed to just grab it from getpwnam() or similar, but until that becomes more common, I propose this simple change to make user sessions a little bit nicer out of the box.
2013-09-28kmod-static-nodes: condition execution on modules.devnameDave Reisner
2013-09-23Fix obsolete references to systemd-random-seed-load.serviceEelco Dolstra
This service was merged with systemd-random-seed-save.service in c35b956d34bbb8bb208e49e45de2c103ca11911c.
2013-09-17nspawn: update unit fileLennart Poettering
ControlGroup= is obsolete, so let's drop it from the default nspawn unit file.
2013-09-11Add pam configuration to allow user sessions to work out of the boxZbigniew Jędrzejewski-Szmek
systemd-logind will start user@.service. user@.service unit uses PAM with service name 'systemd-user' to perform account and session managment tasks. Previously, the name was 'systemd-shared', it is now changed to 'systemd-user'. Most PAM installations use one common setup for different callers. Based on a quick poll, distributions fall into two camps: those that have system-auth (Redhat, Fedora, CentOS, Arch, Gentoo, Mageia, Mandriva), and those that have common-auth (Debian, Ubuntu, OpenSUSE). Distributions that have system-auth have just one configuration file that contains auth, password, account, and session blocks, and distributions that have common-auth also have common-session, common-password, and common-account. It is thus impossible to use one configuration file which would work for everybody. systemd-user now refers to system-auth, because it seems that the approach with one file is more popular and also easier, so let's follow that.
2013-09-11filesystem targets: disable default dependenciesTom Gundersen
This means we can use default dependencies on mount units without having to get them automatically ordered before the filesystem targets. Reported-by: Thomas Baechler <thomas@archlinux.org>
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.