[systemd-devel] Is unmounting of filesystem synchronized with stopping services using these filesystems?
Andrey Borzenkov
arvidjaar at gmail.com
Sat Nov 24 23:56:02 PST 2012
В Sat, 24 Nov 2012 19:12:56 +0100
Lennart Poettering <lennart at poettering.net> пишет:
> On Sat, 24.11.12 10:28, Andrey Borzenkov (arvidjaar at gmail.com) wrote:
>
> > According to bootup(7) stopping services and unmounting of filesystems
> > happens in parallel. Is there any sort of implicit dependencies between
> > running services and filesystems? I do not see anything besides
> > dependencies explicitly listed in unit files.
> >
[...]
>
> Note that normal services are generally ordered after basic.target
> (unless DefaultDependencies=no is set for them) which transitively means
> they are also ordered after local-fs.target, which is in turn ordered
> after the boot-time mount units. Now, since we have the general rule
> "the shutdown order is the reverse of the startup order", this also
> means that at shutdown, the services with be stopped before the mount
> units will be stopped.
>
[...]
> Hope that makes some sense?
>
Ah, thank you. But then bootup(7) is rather misleading. Unmount is
performed only after all services have been stopped (or at least
attempted to be stopped) and not in parallel as bootup(7) implies.
Is the following appropriate or it makes it even more confusing? :)
From: Andrey Borzenkov <arvidjaar at gmail.com>
Subject: [PATCH] clarify that services are stopped before unmount happens
Current bootup(7) implies that unmount happens in parallel with stopping
other services. Actually unmount begins after all services are stopped
due to reverse dependencies local-fs.target > basic.target > all services
---
man/bootup.xml | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/man/bootup.xml b/man/bootup.xml
index 4cc4baf..81f8954 100644
--- a/man/bootup.xml
+++ b/man/bootup.xml
@@ -183,14 +183,20 @@
-<programlisting> (conflicts with (conflicts with
- all system all file system
- services) mounts, swaps,
- | cryptsetup
- | devices, ...)
- | |
+<programlisting> (various system
+ services)
+ |
+ v
+ basic.target
+ |\______________
+ | \
v v
shutdown.target umount.target
+ (conflicts with (conflicts with
+ all system all file system
+ services) mounts, swaps,
+ | cryptseup
+ | devices, ...)
| |
\_______ ______/
\ /
--
tg: (8403cbb..) t/shutdown-umount-order (depends on: master)
More information about the systemd-devel
mailing list