summary refs log tree commit diff
path: root/gnu/services
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-11-14 00:48:43 +0100
committerLudovic Courtès <ludo@gnu.org>2014-11-14 00:48:43 +0100
commit48bd76e0099918ad54f41480cff03bf87a1c5ef0 (patch)
treea4e6a72180cd8eccc9aa2f689462edd9fe18b7cd /gnu/services
parentcd4a3cb359467c53e2ddd7240845b55b1129c91d (diff)
downloadguix-48bd76e0099918ad54f41480cff03bf87a1c5ef0.tar.gz
services: user-unmount: Change directory to "/" before unmounting.
* gnu/services/base.scm (user-unmount-service): Add 'chdir' call.
Diffstat (limited to 'gnu/services')
-rw-r--r--gnu/services/base.scm3
1 files changed, 3 insertions, 0 deletions
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index 0c45d54d17..712222bdde 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -161,6 +161,9 @@ in KNOWN-MOUNT-POINTS when it is stopped."
                           (cons* "/proc" "/sys"
                                  '#$known-mount-points)))
 
+                ;; Make sure we don't keep the user's mount points busy.
+                (chdir "/")
+
                 (for-each (lambda (mount-point)
                             (format #t "unmounting '~a'...~%" mount-point)
                             (catch 'system-error