diff options
author | Manuel Schneider | 2013-12-13 10:19:45 +0100 |
---|---|---|
committer | Manuel Schneider | 2013-12-13 10:19:45 +0100 |
commit | d3eeda7d767e38c6a99bd6b9defa1cec6e7a733a (patch) | |
tree | 7ca9f0d6628ac118e85c2e1f652c2fd1df0dcba5 /server/modules | |
parent | [cups] duplex on RZFARBE as standard (diff) | |
parent | [vmchooser] Fix NFS fallback once again (diff) | |
download | tm-scripts-d3eeda7d767e38c6a99bd6b9defa1cec6e7a733a.tar.gz tm-scripts-d3eeda7d767e38c6a99bd6b9defa1cec6e7a733a.tar.xz tm-scripts-d3eeda7d767e38c6a99bd6b9defa1cec6e7a733a.zip |
Merge branch 'master' of git.openslx.org:openslx-ng/tm-scripts
Diffstat (limited to 'server/modules')
-rw-r--r-- | server/modules/pam-freiburg/opt/openslx/scripts/pam_script_mount_persistent | 38 |
1 files changed, 21 insertions, 17 deletions
diff --git a/server/modules/pam-freiburg/opt/openslx/scripts/pam_script_mount_persistent b/server/modules/pam-freiburg/opt/openslx/scripts/pam_script_mount_persistent index f6a295f2..d8808f66 100644 --- a/server/modules/pam-freiburg/opt/openslx/scripts/pam_script_mount_persistent +++ b/server/modules/pam-freiburg/opt/openslx/scripts/pam_script_mount_persistent @@ -30,22 +30,26 @@ if [ $(id -g ${PAM_USER}) -ge 1000 ]; then # now we can mount the home directory! - MOUNT_OPTS="-t nfs4 -o rw,nosuid,nodev,nolock,intr,hard,sloppy,sec=krb5p" - - SIGNAL=$(mktemp) - rm -f -- "${SIGNAL}" - (mount ${MOUNT_OPTS} "${FILESERVER}:${VOLUME}" "${PERSISTENT_HOME_DIR}" || touch "${SIGNAL}") & - MOUNT_PID=$! - for COUNTER in 1 2 4 4; do - kill -0 "${MOUNT_PID}" 2>/dev/null || break - sleep "${COUNTER}" - done - - if [ -e "${SIGNAL}" ] || kill -9 "${MOUNT_PID}" 2>/dev/null; then - slxlog "pam-freiburg" "Mount of '${FILESERVER}:${VOLUME}' to '${PERSISTENT_HOME_DIR}' failed. (Args: ${MOUNT_OPTS})" - rm -f -- "${SIGNAL}" - else - exit 0 - fi + MOUNT_OPTS="-t nfs4 -o rw,nosuid,nodev,nolock,intr,hard,sloppy" + if echo "$FILESERVER" | grep -q "sunfs6"; then + MOUNT_OPTS="${MOUNT_OPTS},sec=krb5i" + else + MOUNT_OPTS="${MOUNT_OPTS},sec=krb5p" + fi + + SIGNAL=$(mktemp) + rm -f -- "${SIGNAL}" + ( mount ${MOUNT_OPTS} "${FILESERVER}:${VOLUME}" "${PERSISTENT_HOME_DIR}" > "/tmp/home.$PAM_USER" 2>&1 || touch "${SIGNAL}" ) & + MOUNT_PID=$! + for COUNTER in 1 2 4 4; do + kill -0 "${MOUNT_PID}" 2>/dev/null || break + sleep "${COUNTER}" + done + + if [ -e "${SIGNAL}" ] || kill -9 "${MOUNT_PID}" 2>/dev/null; then + slxlog "pam-freiburg" "Mount of '${FILESERVER}:${VOLUME}' to '${PERSISTENT_HOME_DIR}' failed. (Args: ${MOUNT_OPTS})" "/tmp/home.$PAM_USER" + rm -f -- "${SIGNAL}" + fi + rm -f -- "/tmp/home.$PAM_USER" fi |