summaryrefslogtreecommitdiff
path: root/units/systemd-sysusers.service
Commit message (Collapse)AuthorAgeFilesLines
* units: add ordering dependencies on initrd-switch-root.targetZbigniew Jędrzejewski-Szmek2022-09-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | For shutdown, we queue shutdown.target/start, so in every unit which should be stopped *before* shutdown, we need both Conflicts and an ordering dependency with shutdown.target (either Before= or After= would work, because stop jobs are always ordered before start jobs). For initrd transition, we queue initrd-switch-root.service/isolate. This automatically creates a /stop job for every running unit without IgnoreOnIsolate. But no ordering dependency is created, unless the unit has a (possibly transitive) ordering dependency on initrd-switch-root.service. Since most units must stop before the transition, we should add the ordering dependency. It is nicer to use Before=initrd-switch-root.target for this. initrd-switch-root.target is ordered before initrd-switch-root.service, so the effect it the same when both are in a transaction. Fixes #23745. To also cover the case where somebody is emergency mode in the initrd and queues initrd-switch-root.service/start (not isolate), also add Conflicts=initrd-switch-root.target, so various units are stopped properly. This extends 2525682565b372b9b83c848bfe89c025fed47a1d to cover all the other services that are touched. It could be consider "operator error", but it's easy to make and it's nicer if we can make this more foolproof.
* units: reorder/split unit dependency blocksZbigniew Jędrzejewski-Szmek2022-09-151-2/+5
| | | | | | | | | | | | | The block is reordered and split to have: 1. description + documentation 2. (optionally) conditions 3. all the dependencies I think it's easier to read the units this way. Also, the Conflicts+Before is seperated out to separate lines. The ordering dependency is "fake", because it could just as well be After=, we are adding it to force ordering wrt. shutdown.target, and it plays a different role than the other Before=, which are about a real ordering on boot.
* sysusers: allow defining additional sysusers lines via credentialsLennart Poettering2022-07-161-1/+5
|
* Revert "sysusers/firstboot: temporarily disable LoadCredential"Luca Boccassi2021-05-031-5/+3
| | | | | | | | This reverts commit 7c20dd4b6ef6e69862576722ac69b895d7a92dc9. Debian has now been updated to patch the issue, so SemaphoreCI should no longer fail. The fix has also been backported to the affected stable branches.
* sysusers/firstboot: temporarily disable LoadCredentialLuca Boccassi2021-04-061-3/+5
| | | | | | | | | Single-param LoadCredential= in units causes systemd v247/v248 to assert when parsing. Disable it for now, until the fix is merged in the stable trees, released and available (eg: in Debian for the CI) See: https://github.com/systemd/systemd/issues/19178
* sysusers: read passwords from the credentials logicLennart Poettering2021-03-261-0/+7
| | | | | | | | | | | | | | Let's make use of our own credentials infrastructure in our tools: let's hook up systemd-sysusers with the credentials logic, so that the root password can be provisioned this way. This is really useful when working with stateless systems, in particular nspawn's "--volatile=yes" switch, as this works now: # systemd-nspawn -i foo.raw --volatile=yes --set-credential=passwd.plaintext-password:foo For the first time we have a nice, non-interactive way to provision the root password for a fully stateless system from the container manager. Yay!
* license: LGPL-2.1+ -> LGPL-2.1-or-laterYu Watanabe2020-11-091-1/+1
|
* units: drop full paths for utilities in $PATHZbigniew Jędrzejewski-Szmek2020-01-201-0/+23
This makes things a bit simpler and the build a bit faster, because we don't have to rewrite files to do the trivial substitution. @rootbindir@ is always in our internal $PATH that we use for non-absolute paths, so there should be no functional change.