unmount oldhome and linuxhome on logout

This commit is contained in:
Raphael Dannecker 2023-07-16 17:52:27 +02:00
parent 0347ecda0e
commit 962cfa69d6

View file

@ -4,6 +4,14 @@ set -eu
share="/srv/samba/schools/default-school/share/" share="/srv/samba/schools/default-school/share/"
home="$(getent passwd "$SUDO_UID" | cut -d : -f 6)" home="$(getent passwd "$SUDO_UID" | cut -d : -f 6)"
exit_script() {
echo "unmounting media - terminated by trap!" >> "/tmp/${SUDO_UID}-exit-mount.log"
findmnt "/media/${SUDO_USER}/oldhome" && umount "/media/${SUDO_USER}/oldhome" && rmdir "/media/${SUDO_USER}/oldhome"
findmnt "/media/${SUDO_USER}/linuxhome" && umount "/media/${SUDO_USER}/linuxhome" && rmdir "/media/${SUDO_USER}/linuxhome"
trap - SIGHUP SIGINT SIGTERM # clear the trap
kill -- -$$ # Sends SIGTERM to child/sub processes
}
if [[ "$#" -gt 0 ]] && [[ "$1" = '-u' ]]; then if [[ "$#" -gt 0 ]] && [[ "$1" = '-u' ]]; then
findmnt "/media/${SUDO_USER}/home" && umount "/media/${SUDO_USER}/home" && rmdir "/media/${SUDO_USER}/home" findmnt "/media/${SUDO_USER}/home" && umount "/media/${SUDO_USER}/home" && rmdir "/media/${SUDO_USER}/home"
findmnt "/media/${SUDO_USER}/share" && umount "/media/${SUDO_USER}/share" && rmdir "/media/${SUDO_USER}/share" findmnt "/media/${SUDO_USER}/share" && umount "/media/${SUDO_USER}/share" && rmdir "/media/${SUDO_USER}/share"
@ -13,14 +21,28 @@ elif [ "$#" -gt 0 ] && [ "$1" = '-o' ]; then
read -rp "Username: " username read -rp "Username: " username
read -srp "Passwort: " PASSWD read -srp "Passwort: " PASSWD
export PASSWD export PASSWD
echo
mkdir -p "/media/${SUDO_USER}/oldhome" mkdir -p "/media/${SUDO_USER}/oldhome"
#errcode=$(mount -t cifs -o "username=${username},uid=${SUDO_UID},gid=1010,file_mode=0770,dir_mode=0770,forceuid,forcegid" \
# "//192.168.1.2/DOCS/fvs" "/media/${SUDO_USER}/oldhome")
#if [[ ! "${errcode}" ]]; then
mount -t cifs -o "username=${username},uid=${SUDO_UID},gid=1010,file_mode=0770,dir_mode=0770,forceuid,forcegid" \ mount -t cifs -o "username=${username},uid=${SUDO_UID},gid=1010,file_mode=0770,dir_mode=0770,forceuid,forcegid" \
"//192.168.1.2/DOCS/fvs" "/media/${SUDO_USER}/oldhome" "//192.168.1.2/DOCS/fvs" "/media/${SUDO_USER}/oldhome"
echo "Mounting successfull!"
echo "Dieses Fenster bitte nicht schließen!"
echo "Um weiter zu arbeiten: <Strg> + <Z>"
trap exit_script SIGHUP SIGINT SIGTERM
sleep infinity
elif [ "$#" -gt 0 ] && [ "$1" = '-l' ]; then elif [ "$#" -gt 0 ] && [ "$1" = '-l' ]; then
read -rp "Username: " username read -rp "Username: " username
mkdir -p "/media/${SUDO_USER}/linuxhome" mkdir -p "/media/${SUDO_USER}/linuxhome"
mount -t fuse -o "allow_other,uid=${SUDO_UID},gid=1010,reconnect" \ mount -t fuse -o "allow_other,uid=${SUDO_UID},gid=1010,reconnect" \
"sshfs#${username}@home.steinbeisschule-reutlingen.de:" "/media/${SUDO_USER}/linuxhome" "sshfs#${username}@home.steinbeisschule-reutlingen.de:" "/media/${SUDO_USER}/linuxhome"
echo "Mounting successfull!"
echo "Dieses Fenster bitte nicht schließen!"
echo "Um weiter zu arbeiten: <Strg> + <Z>"
trap exit_script SIGHUP SIGINT SIGTERM
sleep infinity
else else
mkdir -p "/media/${SUDO_USER}" mkdir -p "/media/${SUDO_USER}"
chown "${SUDO_USER}:1010" "/media/${SUDO_USER}" chown "${SUDO_USER}:1010" "/media/${SUDO_USER}"