summaryrefslogtreecommitdiff
path: root/units
AgeCommit message (Collapse)Author
2014-09-25readahead: wipe out readaheadDaniel Buch
2014-09-08units: networkd - order after udevTom Gundersen
This way we are sure that /dev/net/tun has been given the right permissions before we try to connect to it. Ideally, we should create tun/tap devices over netlink, and then this whole issue would go away.
2014-09-03initrd-parse-etc.service: ignore return code of daemon-reloadHarald Hoyer
It seems the return code of systemctl daemon-reload can be !=0 in some circumstances, which causes a failure of the unit and breaks booting in the initrd.
2014-08-31units: update rescue.service and emergency.serviceZbigniew Jędrzejewski-Szmek
^D works in emergency.service too. One needs to log in when in rescue mode too.
2014-08-31units: m4 is not needed for rescue.serviceZbigniew Jędrzejewski-Szmek
2014-08-30units: make emergency.service conflict with rescue.serviceZbigniew Jędrzejewski-Szmek
They both use StandardInput=tty-force so they cannot be run concurrently. https://bugs.freedesktop.org/show_bug.cgi?id=82778 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=757072
2014-08-28systemd-journal-upload: fix invalid After=Marius Tessmann
After= belongs into [Unit], not [Install]. Found with systemd-analyze verify.
2014-08-28systemd-firstboot.service: fix man page sectionMarius Tessmann
Found with systemd-analyze verify.
2014-08-26hibernate-resume: add a tool to write a device node's major:minor to ↵Ivan Shapovalov
/sys/power/resume. This can be used to initiate a resume from hibernation by path to a swap device containing the hibernation image. The respective templated unit is also added. It is instantiated using path to the desired resume device.
2014-08-26units: order systemd-fsck@.service after local-fs-pre.target.Ivan Shapovalov
With this change, it becomes possible to order a unit to activate before any modifications to the file systems. This is especially useful for supporting resume from hibernation.
2014-08-15unit: remove spurious newlineLennart Poettering
2014-08-14ldconfig: add configure option to disableUmut Tezduyar Lindskog
2014-08-13journald: also increase the SendBuffer of /dev/log to 8MLennart Poettering
http://lists.freedesktop.org/archives/systemd-devel/2014-August/021825.html
2014-08-03ldconfig: dont run it if ldconfig is not installedUmut Tezduyar Lindskog
2014-07-17units: fix typoZbigniew Jędrzejewski-Szmek
vrutkovs> zbyszek: http://cgit.freedesktop.org/systemd/systemd/diff/units/systemd-journal-upload.service.in?id=ad95fd1d2b9c6344864857c2ba7634fd87753f8e - typo in Group name
2014-07-15units/serial-getty@.service: use the default RestartSecMichael Olbrich
For pluggable ttys such as USB serial devices, the getty is restarted and exits in a loop until the remove event reaches systemd. Under certain circumstances the restart loop can overload the system in a way that prevents the remove event from reaching systemd for a long time (e.g. at least several minutes on a small embedded system). Use the default RestartSec to prevent the restart loop from overloading the system. Serial gettys are interactive units, so waiting an extra 100ms really doesn't make a difference anyways compared to the time it takes the user to log in.
2014-07-15journal-remote: add units and read certs from default locationsZbigniew Jędrzejewski-Szmek
2014-07-16resolved: add busname unit fileKay Sievers
2014-07-09units: make ExecStopPost action part of ExecStartMichal Sekletar
Currently after exiting rescue shell we isolate default target. User might want to isolate to some other target than default one. However issuing systemctl isolate command to desired target would bring system to default target as a consequence of running ExecStopPost action. Having common ancestor for rescue shell and possible followup systemctl default command should fix this. If user exits rescue shell we will proceed with isolating default target, otherwise, on manual isolate, parent shell process is terminated and we don't isolate default target, but target chosen by user. Suggested-by: Michal Schmidt <mschmidt@redhat.com>
2014-07-07firstboot: get rid of firstboot generator again, introduce ↵Lennart Poettering
ConditionFirstBoot= instead As Zbigniew pointed out a new ConditionFirstBoot= appears like the nicer way to hook in systemd-firstboot.service on first boots (those with /etc unpopulated), so let's do this, and get rid of the generator again.
2014-07-07firstboot: add new component to query basic system settings on first boot, ↵Lennart Poettering
or when creating OS images offline A new tool "systemd-firstboot" can be used either interactively on boot, where it will query basic locale, timezone, hostname, root password information and set it. Or it can be used non-interactively from the command line when prepareing disk images for booting. When used non-inertactively the tool can either copy settings from the host, or take settings on the command line. $ systemd-firstboot --root=/path/to/my/new/root --copy-locale --copy-root-password --hostname=waldi The tool will be automatically invoked (interactively) now on first boot if /etc is found unpopulated. This also creates the infrastructure for generators to be notified via an environment variable whether they are running on the first boot, or not.
2014-07-04units: conditionalize configfs and debugfs with CAP_SYS_RAWIOLennart Poettering
We really don't want these in containers as they provide a too lowlevel look on the system. Conditionalize them with CAP_SYS_RAWIO since that's required to access /proc/kcore, /dev/kmem and similar, which feel similar in style. Also, npsawn containers lack that capability.
2014-07-04units: conditionalize static device node logic on CAP_SYS_MODULES instead of ↵Lennart Poettering
CAP_MKNOD npsawn containers generally have CAP_MKNOD, since this is required to make PrviateDevices= work. Thus, it's not useful anymore to conditionalize the kmod static device node units. Use CAP_SYS_MODULES instead which is not available for nspawn containers. However, the static device node logic is only done for being able to autoload modules with it, and if we can't do that there's no point in doing it.
2014-07-03machinectl: show /etc/os-release information of container in status outputLennart Poettering
2014-07-03nspawn: when running in a service unit, use systemd for restartsLennart Poettering
THis way we can remove cgroup priviliges after setup, but get them back for the next restart, as we need it.
2014-07-01man: document systemd-update-done.serviceLennart Poettering
2014-06-30units: skip mounting /tmp if it is a symlinkLennart Poettering
We shouldn't get confused if people have symlinked /tmp somewhere, so let's simply skip the mount then.
2014-06-30units: networkd - don't order wait-online.service before network.targetTom Gundersen
Reported by Michael Olbrich.
2014-06-29units: local-fs.target - don't pull in default dependenciesTom Gundersen
Reported by Gerardo Exequiel Pozzi: Looks like [commit a4a878d0] also changes a unrelated file (units/local-fs.target) [partially]reverting the commit 40f862e3 (filesystem targets: disable default dependencies) The side effect, at least in my case is that the "nofail" option in both "crypttab" and "fstab" has partial effect does the default timeout instead of continue normal boot without timeout.
2014-06-28units: remove RefuseManualStart from units which are always aroundZbigniew Jędrzejewski-Szmek
In a normal running system, non-passive targets and units used during early bootup are always started. So refusing "manual start" for them doesn't make any difference, because a "start" command doesn't cause any action. In early boot however, the administrator might want to start on of those targets or services by hand. We shouldn't interfere with that. Note: in case of systemd-tmpfiles-setup.service, really running the unit after system is up would break the system. So e.g. restarting should not be allowed. The unit has "RefuseManualStop=yes", which prevents restart too.
2014-06-19units/systemd-sysctl.service.in: run after load-modulesCristian Rodríguez
Modules might or will register new sysctl options. [zj: This mechanism of adding modules just to reliably set sysctl attributes is not ideal. Nevertheless, sysctl for dynamically created attributes is simply broken, and this is the easiest workaround.] https://bugzilla.redhat.com/show_bug.cgi?id=1022977 https://bugzilla.novell.com/show_bug.cgi?id=725412
2014-06-20units: order systemd-tmpfiles-clean.service after time-sync.targetLennart Poettering
That way, on systems lacking an RTC we don't false start removing aged files too early.
2014-06-19units: add missing caps so that GetAddresses() can workLennart Poettering
2014-06-18cryptsetup: introduce new cryptsetup-pre.traget unit so that services can ↵Lennart Poettering
make sure they are started before and stopped after any LUKS setup https://bugzilla.redhat.com/show_bug.cgi?id=1097938
2014-06-17timesyncd: do not start in virtualized environmentsKay Sievers
2014-06-17units: minor cleanupsLennart Poettering
2014-06-17networkd: don't pull in systemd-networkd-wait-online service from ↵Lennart Poettering
systemd-networkd when enabling networkd-wait-online should never exist in the default transaction, unless explicitly enable or pulled in via things like NFS. However, just enabling networkd shouldn't enable networkd-wait-online, since it's common to use the former without the latter.
2014-06-17install: introduce new DefaultInstance= field for [Install] sectionsLennart Poettering
The DefaultInstance= name is used when enabling template units when only specifying the template name, but no instance. Add DefaultInstance=tty1 to getty@.service, so that when the template itself is enabled an instance for tty1 is created. This is useful so that we "systemctl preset-all" can work properly, because we can operate on getty@.service after finding it, and the right instance is created.
2014-06-16units: add a service to invoke ldconfig on system updates at bootLennart Poettering
2014-06-16units: drop RefuseManualStart= from a couple of update servicesLennart Poettering
The only update service we really need to guard like this is systemd-tmpfiles-setup.service since if invoked manually might create /var/run/nologin and thus blocking the user from login. The other services are pretty much idempotent and don't suffer by this problem, hence let's simplify them.
2014-06-15units: bring systemd-tmpfiles-setup-dev.service closer to ↵Lennart Poettering
systemd-tmpfiles-setup.service Among other things, order both services relative to systemd-sysusers.service in the same direction.
2014-06-14sysusers: order before tmpfiles which need the idsKay Sievers
2014-06-13rpm: add RPM macros to apply sysusers, sysctl, and binfmt drop-insLennart Poettering
With this in place RPMs can make sure that whatever they drop in is immeidately applied, and not delayed until next reboot. This also moves systemd-sysusers back to /usr/bin, since hardcoding the path to /usr/lib in the macros would mean compatibility breaks in future, should we turn sysusers into a command that is actually OK for people to call directly. And given that that is quite likely to happen (since it is useful to prepare images with its --root= switch), let's just prepare for it.
2014-06-13units: rebuild /etc/passwd, the udev hwdb and the journal catalog files on bootLennart Poettering
Only when necessary of course, nicely guarded with the new ConditionNeedsUpdate= condition we added.
2014-06-13core: add new ConditionNeedsUpdate= unit conditionLennart Poettering
This new condition allows checking whether /etc or /var are out-of-date relative to /usr. This is the counterpart for the update flag managed by systemd-update-done.service. Services that want to be started once after /usr got updated should use: [Unit] ConditionNeedsUpdate=/etc Before=systemd-update-done.service This makes sure that they are only run if /etc is out-of-date relative to /usr. And that it will be executed after systemd-update-done.service which is responsible for marking /etc up-to-date relative to the current /usr. ConditionNeedsUpdate= will also checks whether /etc is actually writable, and not trigger if it isn't, since no update is possible then.
2014-06-13update-done: add minimal tool to manage system updates for /etc and /var, if ↵Lennart Poettering
/usr has changed In order to support offline updates to /usr, we need to be able to run certain tasks on next boot-up to bring /etc and /var in line with the updated /usr. Hence, let's devise a mechanism how we can detect whether /etc or /var are not up-to-date with /usr anymore: we keep "touch files" in /etc/.updated and /var/.updated that are mtime-compared with /usr. This means: Whenever the vendor OS tree in /usr is updated, and any services that shall be executed at next boot shall be triggered, it is sufficient to update the mtime of /usr itself. At next boot, if /etc/.updated and/or /var/.updated is older than than /usr (or missing), we know we have to run the update tools once. After that is completed we need to update the mtime of these files to the one of /usr, to keep track that we made the necessary updates, and won't repeat them on next reboot. A subsequent commit adds a new ConditionNeedsUpdate= condition that allows checking on boot whether /etc or /var are outdated and need updating. This is an early step to allow booting up with an empty /etc, with automatic rebuilding of the necessary cache files or user databases therein, as well as supporting later updates of /usr that then propagate to /etc and /var again.
2014-06-13units: don't conditionalize sysctl serviceLennart Poettering
We install two sysctl snippets ourselves, hence the condition will always trigger, so no point in tryng to optimize things with this, it just will make things slower, if anything.
2014-06-13units: remove conditions from systemd-tmpfiles-setupLennart Poettering
There's no point in conditionalizing systemd-tmpfiles at boot, since we ship tmpfiles snippets ourselves, hence they will always trigger anyway. Also, there's no reason to pull in local-fs.target from the service, hence drop that.
2014-06-12debug-shell: add condition for tty device to run onKay Sievers
2014-06-11units: order network-online.target after network.targetLennart Poettering
There might be implementations around where the network-online logic might not talk to any network configuration service (and thus not have to wait for it), hence let's explicitly order network-online.target after network.target to avoid any ambiguities.