From 08d085cbd56ba9dd0e3f347df085a2da336925a4 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 29 Oct 2021 14:35:52 +0200 Subject: [pam-slx-plug] Unmount doubly-mounted home directory --- core/modules/pam-slx-plug/data/opt/openslx/pam/mount.d/99-fallback | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'core/modules/pam-slx-plug') diff --git a/core/modules/pam-slx-plug/data/opt/openslx/pam/mount.d/99-fallback b/core/modules/pam-slx-plug/data/opt/openslx/pam/mount.d/99-fallback index 695dccaa..b0ef8707 100644 --- a/core/modules/pam-slx-plug/data/opt/openslx/pam/mount.d/99-fallback +++ b/core/modules/pam-slx-plug/data/opt/openslx/pam/mount.d/99-fallback @@ -88,6 +88,12 @@ if [ -n "$PIDS" ]; then kill -9 $PIDS # Kill any leftovers; No quotes fi +# In rare cases we end up with a race condition that leads to two mounts +while [ "$( grep -c -F " ${PERSISTENT_HOME_DIR} " "/proc/mounts" )" -gt 1 ]; do + umount "${PERSISTENT_HOME_DIR}" || break + usleep 100000 # 100ms +done + # Only if SHARE_NO_HOME_WARN is empty or 0 if [ -z "${SHARE_NO_HOME_WARN%0}" ] && ! isHomeMounted; then LOG_COMBINED=$(mktemp) -- cgit v1.2.3-55-g7522