summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.am14
-rw-r--r--units/debian/umountfs.service18
-rw-r--r--units/debian/umountnfs.service18
-rw-r--r--units/debian/umountroot.service18
4 files changed, 67 insertions, 1 deletions
diff --git a/Makefile.am b/Makefile.am
index 944b8718a..b40aa96c3 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -236,7 +236,10 @@ dist_systemunit_DATA += \
units/debian/killall.service \
units/debian/poweroff.service \
units/debian/reboot.service \
- units/debian/fsck.target
+ units/debian/fsck.target \
+ units/debian/umountfs.service \
+ units/debian/umountnfs.service \
+ units/debian/umountroot.service
endif
if TARGET_SUSE
@@ -961,6 +964,15 @@ if TARGET_GENTOO
rm -f xdm.service && \
$(LN_S) $(systemunitdir)/xdm.service xdm.service )
endif
+if TARGET_DEBIAN
+ $(MKDIR_P) -m 0755 \
+ $(DESTDIR)$(systemunitdir)/umount.target.wants
+ ( cd $(DESTDIR)$(systemunitdir)/umount.target.wants && \
+ rm -f umountfs.service umountnfs.service umountroot.service && \
+ $(LN_S) ../umountfs.service umountfs.service && \
+ $(LN_S) ../umountnfs.service umountnfs.service && \
+ $(LN_S) ../umountroot.service umountroot.service )
+endif
if !TARGET_SUSE
if !TARGET_DEBIAN
( cd $(DESTDIR)$(systemunitdir) && \
diff --git a/units/debian/umountfs.service b/units/debian/umountfs.service
new file mode 100644
index 000000000..804db8853
--- /dev/null
+++ b/units/debian/umountfs.service
@@ -0,0 +1,18 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Turn off swap and umount all local file systems
+DefaultDependencies=no
+After=killall.service
+Before=reboot.service poweroff.service halt.service umountroot.service
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/etc/init.d/umountfs stop
+StandardOutput=tty
diff --git a/units/debian/umountnfs.service b/units/debian/umountnfs.service
new file mode 100644
index 000000000..598c3d4fb
--- /dev/null
+++ b/units/debian/umountnfs.service
@@ -0,0 +1,18 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Umount all network file systems
+DefaultDependencies=no
+After=killall.service
+Before=reboot.service poweroff.service halt.service umountfs.service
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/etc/init.d/umountnfs.sh stop
+StandardOutput=tty
diff --git a/units/debian/umountroot.service b/units/debian/umountroot.service
new file mode 100644
index 000000000..5d1160228
--- /dev/null
+++ b/units/debian/umountroot.service
@@ -0,0 +1,18 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Mount the root file system read-only
+DefaultDependencies=no
+After=killall.service
+Before=reboot.service poweroff.service halt.service
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/etc/init.d/umountroot stop
+StandardOutput=tty