diff options
Diffstat (limited to 'units')
-rw-r--r-- | units/.gitignore | 1 | ||||
-rw-r--r-- | units/initrd-switch-root.service.in | 3 | ||||
-rw-r--r-- | units/systemd-volatile-root.service.in | 21 |
3 files changed, 23 insertions, 2 deletions
diff --git a/units/.gitignore b/units/.gitignore index 8fdb6e9ab5..4398a59f91 100644 --- a/units/.gitignore +++ b/units/.gitignore @@ -75,5 +75,6 @@ /systemd-update-utmp.service /systemd-user-sessions.service /systemd-vconsole-setup.service +/systemd-volatile-root.service /tmp.mount /user@.service diff --git a/units/initrd-switch-root.service.in b/units/initrd-switch-root.service.in index 82893dafb1..219748d19b 100644 --- a/units/initrd-switch-root.service.in +++ b/units/initrd-switch-root.service.in @@ -15,6 +15,5 @@ AllowIsolate=yes [Service] Type=oneshot -# we have to use "--force" here, otherwise systemd would umount /run -ExecStart=@rootbindir@/systemctl --no-block --force switch-root /sysroot +ExecStart=@rootbindir@/systemctl --no-block switch-root /sysroot KillMode=none diff --git a/units/systemd-volatile-root.service.in b/units/systemd-volatile-root.service.in new file mode 100644 index 0000000000..cc4e604e4c --- /dev/null +++ b/units/systemd-volatile-root.service.in @@ -0,0 +1,21 @@ +# This file is part of systemd. +# +# systemd is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. + +[Unit] +Description=Enforce Volatile Root File Systems +Documentation=man:systemd-volatile-root.service(8) +DefaultDependencies=no +Conflicts=shutdown.target +After=sysroot.mount +Before=initrd-root-fs.target shutdown.target +Conflicts=shutdown.target +AssertPathExists=/etc/initrd-release + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=@rootlibexecdir@/systemd-volatile-root yes /sysroot |