diff --git a/units/initrd-switch-root.service b/units/initrd-switch-root.service index e3d6926711..9914d26408 100644 --- a/units/initrd-switch-root.service +++ b/units/initrd-switch-root.service @@ -9,11 +9,13 @@ [Unit] Description=Switch Root -DefaultDependencies=no + AssertPathExists=/etc/initrd-release + +DefaultDependencies=no +AllowIsolate=yes OnFailure=emergency.target OnFailureJobMode=replace-irreversibly -AllowIsolate=yes [Service] Type=oneshot diff --git a/units/ldconfig.service b/units/ldconfig.service index 33824d4d4f..cb887ae865 100644 --- a/units/ldconfig.service +++ b/units/ldconfig.service @@ -10,13 +10,16 @@ [Unit] Description=Rebuild Dynamic Linker Cache Documentation=man:ldconfig(8) -DefaultDependencies=no -Conflicts=shutdown.target -After=local-fs.target -Before=sysinit.target shutdown.target systemd-update-done.service + ConditionNeedsUpdate=|/etc ConditionFileNotEmpty=|!/etc/ld.so.cache +DefaultDependencies=no +After=local-fs.target +Before=sysinit.target systemd-update-done.service +Conflicts=shutdown.target +Before=shutdown.target + [Service] Type=oneshot RemainAfterExit=yes diff --git a/units/sysinit.target b/units/sysinit.target index eed3d16b45..5187605a3c 100644 --- a/units/sysinit.target +++ b/units/sysinit.target @@ -10,6 +10,8 @@ [Unit] Description=System Initialization Documentation=man:systemd.special(7) -Conflicts=emergency.service emergency.target + Wants=local-fs.target swap.target -After=local-fs.target swap.target emergency.service emergency.target +After=local-fs.target swap.target +Conflicts=emergency.service emergency.target +Before=emergency.service emergency.target diff --git a/units/systemd-ask-password-console.path b/units/systemd-ask-password-console.path index 7b84923023..997fe0ff0c 100644 --- a/units/systemd-ask-password-console.path +++ b/units/systemd-ask-password-console.path @@ -10,12 +10,16 @@ [Unit] Description=Dispatch Password Requests to Console Directory Watch Documentation=man:systemd-ask-password-console.path(8) -DefaultDependencies=no -Conflicts=shutdown.target emergency.service -After=plymouth-start.service -Before=paths.target shutdown.target cryptsetup.target + ConditionPathExists=!/run/plymouth/pid +DefaultDependencies=no +After=plymouth-start.service +Before=paths.target cryptsetup.target +Conflicts=emergency.service +Conflicts=shutdown.target +Before=shutdown.target + [Path] DirectoryNotEmpty=/run/systemd/ask-password MakeDirectory=yes diff --git a/units/systemd-ask-password-console.service b/units/systemd-ask-password-console.service index d31f3fa70f..97c651f009 100644 --- a/units/systemd-ask-password-console.service +++ b/units/systemd-ask-password-console.service @@ -10,12 +10,15 @@ [Unit] Description=Dispatch Password Requests to Console Documentation=man:systemd-ask-password-console.service(8) -DefaultDependencies=no -Conflicts=shutdown.target emergency.service -After=plymouth-start.service systemd-vconsole-setup.service -Before=shutdown.target + ConditionPathExists=!/run/plymouth/pid +DefaultDependencies=no +After=plymouth-start.service systemd-vconsole-setup.service +Conflicts=emergency.service +Conflicts=shutdown.target +Before=shutdown.target + [Service] ExecStart=systemd-tty-ask-password-agent --watch --console SystemCallArchitectures=native diff --git a/units/systemd-ask-password-wall.path b/units/systemd-ask-password-wall.path index 13e1dae672..e3b6c61346 100644 --- a/units/systemd-ask-password-wall.path +++ b/units/systemd-ask-password-wall.path @@ -10,9 +10,12 @@ [Unit] Description=Forward Password Requests to Wall Directory Watch Documentation=man:systemd-ask-password-wall.path(8) + DefaultDependencies=no -Conflicts=shutdown.target emergency.service -Before=paths.target shutdown.target cryptsetup.target +Before=paths.target cryptsetup.target +Conflicts=emergency.service +Conflicts=shutdown.target +Before=shutdown.target [Path] DirectoryNotEmpty=/run/systemd/ask-password diff --git a/units/systemd-boot-system-token.service b/units/systemd-boot-system-token.service index 55f05ec8d8..56d3c8ad47 100644 --- a/units/systemd-boot-system-token.service +++ b/units/systemd-boot-system-token.service @@ -10,6 +10,7 @@ [Unit] Description=Store a System Token in an EFI Variable Documentation=man:systemd-boot-system-token.service(8) + DefaultDependencies=no Conflicts=shutdown.target After=local-fs.target systemd-random-seed.service diff --git a/units/systemd-network-generator.service.in b/units/systemd-network-generator.service.in index 6c65efa20e..ff95266d39 100644 --- a/units/systemd-network-generator.service.in +++ b/units/systemd-network-generator.service.in @@ -10,6 +10,7 @@ [Unit] Description=Generate network units from Kernel command line Documentation=man:systemd-network-generator.service(8) + DefaultDependencies=no Before=network-pre.target systemd-udevd.service Wants=network-pre.target diff --git a/units/systemd-sysext.service b/units/systemd-sysext.service index 35b5edca1d..245c0e5a0d 100644 --- a/units/systemd-sysext.service +++ b/units/systemd-sysext.service @@ -10,10 +10,7 @@ [Unit] Description=Merge System Extension Images into /usr/ and /opt/ Documentation=man:systemd-sysext.service(8) -DefaultDependencies=no -Conflicts=shutdown.target -After=local-fs.target -Before=sysinit.target shutdown.target systemd-tmpfiles.service + ConditionCapability=CAP_SYS_ADMIN ConditionDirectoryNotEmpty=|/etc/extensions ConditionDirectoryNotEmpty=|/run/extensions @@ -21,6 +18,12 @@ ConditionDirectoryNotEmpty=|/var/lib/extensions ConditionDirectoryNotEmpty=|/usr/local/lib/extensions ConditionDirectoryNotEmpty=|/usr/lib/extensions +DefaultDependencies=no +After=local-fs.target +Before=sysinit.target systemd-tmpfiles.service +Conflicts=shutdown.target +Before=shutdown.target + [Service] Type=oneshot RemainAfterExit=yes diff --git a/units/systemd-sysusers.service b/units/systemd-sysusers.service index 47373307b3..63ac8da0fb 100644 --- a/units/systemd-sysusers.service +++ b/units/systemd-sysusers.service @@ -10,12 +10,15 @@ [Unit] Description=Create System Users Documentation=man:sysusers.d(5) man:systemd-sysusers.service(8) -DefaultDependencies=no -Conflicts=shutdown.target -After=systemd-remount-fs.service -Before=sysinit.target shutdown.target systemd-update-done.service + ConditionNeedsUpdate=/etc +DefaultDependencies=no +After=systemd-remount-fs.service +Before=sysinit.target systemd-update-done.service +Conflicts=shutdown.target +Before=shutdown.target + [Service] Type=oneshot RemainAfterExit=yes diff --git a/units/systemd-tmpfiles-clean.service b/units/systemd-tmpfiles-clean.service index 7aee6463bd..fdd22013cf 100644 --- a/units/systemd-tmpfiles-clean.service +++ b/units/systemd-tmpfiles-clean.service @@ -10,6 +10,7 @@ [Unit] Description=Cleanup of Temporary Directories Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8) + DefaultDependencies=no Conflicts=shutdown.target initrd-switch-root.service After=local-fs.target time-set.target diff --git a/units/systemd-tmpfiles-setup-dev.service b/units/systemd-tmpfiles-setup-dev.service index 0babe78767..5c4b073e85 100644 --- a/units/systemd-tmpfiles-setup-dev.service +++ b/units/systemd-tmpfiles-setup-dev.service @@ -10,10 +10,12 @@ [Unit] Description=Create Static Device Nodes in /dev Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8) + DefaultDependencies=no -Conflicts=shutdown.target After=systemd-sysusers.service -Before=sysinit.target local-fs-pre.target systemd-udevd.service shutdown.target +Before=sysinit.target local-fs-pre.target systemd-udevd.service +Conflicts=shutdown.target +Before=shutdown.target [Service] Type=oneshot diff --git a/units/systemd-tmpfiles-setup.service b/units/systemd-tmpfiles-setup.service index bc29dbc8c9..a2a3a5cd8e 100644 --- a/units/systemd-tmpfiles-setup.service +++ b/units/systemd-tmpfiles-setup.service @@ -10,10 +10,12 @@ [Unit] Description=Create Volatile Files and Directories Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8) + DefaultDependencies=no Conflicts=shutdown.target initrd-switch-root.service After=local-fs.target systemd-sysusers.service systemd-journald.service -Before=sysinit.target shutdown.target +Before=sysinit.target +Before=shutdown.target RefuseManualStop=yes [Service]