[systemd-devel] shutdown umount order
arvidjaar at gmail.com
Sat Mar 16 07:42:11 PDT 2013
В Sat, 16 Mar 2013 16:17:37 +0400
Ilya Basin <basinilya at gmail.com> пишет:
> CG> 'Twas brillig, and Ilya Basin at 04/01/13 22:22 did gyre and gimble:
> >> Hi list.
> >> On shutdown I have
> >> Buffer I/O error on device dm-...
> >> because the truecrypt disk is unmounted later than the usb disk
> >> containing the truecrypt image.
> >> I think this happens, because
> >> 1) systemd can't figure out the correct mount dependencies
> >> 2) umount is called with the force flag
> >> ---------
> >> There are workarounds specially for truecrypt, but why not solve the
> >> problem entirely?
> >> 1) I think the mount dependencies can't be made 100% reliable. systemd
> >> should use the combination of them and /proc/mounts, but only as a HINT
> >> In my case /proc/mounts contains the right order.
> >> 2) Instead of force umount, systemd should first try to umount
> >> everything gracefully, and if at least one mount point was unmounted
> >> successfully, then retry.
> >> Only if all mounts are busy, systemd should force umount the first
> >> candidate and then repeat the graceful umount for others.
> CG> I'm pretty sure the umounting/shutdown logic does exactly this already.
> CG> It loops over the devices trying to unmount them and only when no
> CG> changes on a complete run of the loop does it exit.
> CG> http://cgit.freedesktop.org/systemd/systemd/tree/src/core/umount.c#n555
> Thanks. Is there a way debug systemd during shutdown? Maybe on
Usual technique is to set systemd log level to debug, log output to
console and set console output to highest possible (dmesg -n debug).
Then record console output (serial or netconsole).
More information about the systemd-devel