diff options
| author | Jonathan Bauer | 2014-01-22 16:59:29 +0100 |
|---|---|---|
| committer | Jonathan Bauer | 2014-01-22 16:59:29 +0100 |
| commit | 1c997d023e76fdb5ac8b29d18f6cab43e166b593 (patch) | |
| tree | 5dc0d422b945eba8070969d42cc374fe83ca984e /remote/modules/pam/data/opt | |
| parent | [plymouth] quit service for plymouth, might be needed one day (diff) | |
| download | tm-scripts-1c997d023e76fdb5ac8b29d18f6cab43e166b593.tar.gz tm-scripts-1c997d023e76fdb5ac8b29d18f6cab43e166b593.tar.xz tm-scripts-1c997d023e76fdb5ac8b29d18f6cab43e166b593.zip | |
[pam] changes: prepare home directory struct in pam-auth and not
session.
Diffstat (limited to 'remote/modules/pam/data/opt')
| -rwxr-xr-x | remote/modules/pam/data/opt/openslx/scripts/pam_script_ses_open | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/remote/modules/pam/data/opt/openslx/scripts/pam_script_ses_open b/remote/modules/pam/data/opt/openslx/scripts/pam_script_ses_open index 75065ec8..519aea55 100755 --- a/remote/modules/pam/data/opt/openslx/scripts/pam_script_ses_open +++ b/remote/modules/pam/data/opt/openslx/scripts/pam_script_ses_open @@ -3,19 +3,6 @@ # Needed as pam_script clears PATH export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/openslx/usr/sbin:/opt/openslx/usr/bin:/opt/openslx/sbin:/opt/openslx/bin" -PASSWD=$(getent passwd "$PAM_USER") -USER_GID=$(echo "$PASSWD" | awk -F ':' '{print $4}') -USER_HOME=$(echo "$PASSWD" | awk -F ':' '{print $6}') - -# Script to be sourced to mount the user's persistent home -PERSISTENT_MOUNT_SCRIPT="/opt/openslx/scripts/pam_script_mount_persistent" -# Script to be run in the user's context iff the persistent home could be mounted successfully -PERSISTENT_MOUNT_USER_SCRIPT="/opt/openslx/scripts/pam_script_mount_persistent_user" -# The user's non-persistent home directory mount point, which should be their linux home -TEMP_HOME_DIR="$USER_HOME" -# The user's persistent home directory mount point -PERSISTENT_HOME_DIR="${TEMP_HOME_DIR}/PERSISTENT" - # NSA needs to know if [ "x$PAM_SERVICE" != "xsu" -a "x$PAM_SERVICE" != "xsudo" ]; then . /opt/openslx/config @@ -26,50 +13,5 @@ if [ "x$PAM_SERVICE" != "xsu" -a "x$PAM_SERVICE" != "xsudo" ]; then fi fi -# check if the script runs as root -[ "x$(whoami)" != "xroot" ] && exit 0 - -# check if PAM_USER is root and skip if it is the case -[ "x${PAM_USER}" == "xroot" ] && exit 0 - -# check if we already mounted the home directory -mount | grep -q " $TEMP_HOME_DIR " && exit 0 - -# no home, lets create it -mkdir -p "${TEMP_HOME_DIR}" || \ - { slxlog "pam-global-mktemphome" "Could not create '${TEMP_HOME_DIR}'."; exit 1; } - -# now make it a tmpfs -mount -t tmpfs -o size=100m tmpfs "${TEMP_HOME_DIR}" || \ - { slxlog "pam-global-tmpfstemphome" "Could not make a tmpfs on ${TEMP_HOME_DIR}"; exit 1; } - -# create a WARNING.txt for the user -cat > "${TEMP_HOME_DIR}/WARNING.txt" << EOF -ATTENTION: This is the non-persistant home directory! -Files saved here will be lost on shutdown. -Your real home is under /home/<user>/PERSISTENT. -Please save your files there. -EOF - -# create the PERSISTENT directory -mkdir -p "${PERSISTENT_HOME_DIR}" || \ - { slxlog "pam-global-mkpersistent" "Could not create '${PERSISTENT_HOME_DIR}'."; exit 1; } - -if ! chown -R "${PAM_USER}:${USER_GID}" "${TEMP_HOME_DIR}"; then - slxlog "pam-global-chpersistent " "Could not chown '${TEMP_HOME_DIR}' to '${PAM_USER}'." - exit 1 -fi - -# now lets see if we have a persistent directory mount script -[ ! -e "${PERSISTENT_MOUNT_SCRIPT}" ] && exit 0 -# yes -. "${PERSISTENT_MOUNT_SCRIPT}" || \ - { slxlog "pam-global-sourcepersistent" "Could not source ${PERSISTENT_MOUNT_SCRIPT}."; exit 1; } - -# Just try to delete the persistent dir. If the mount was successful, it will not work -# If it was not successful, it will be removed so the user doesn't think he can store -# anything in there -rmdir "$PERSISTENT_HOME_DIR" 2> /dev/null - exit 0 |
