Changeset 538 for client/linuxmuster-client/trunk/share/umount.sh
- Timestamp:
- 10/08/09 22:12:22 (3 years ago)
- File:
-
- 1 edited
-
client/linuxmuster-client/trunk/share/umount.sh (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
client/linuxmuster-client/trunk/share/umount.sh
r535 r538 6 6 # 11.07.2009 7 7 # 8 9 # check if mountpoint is mounted 10 mounted(){ 11 if cat /proc/mounts | grep -qw $MNTPT; then 12 return 0 13 else 14 return 1 15 fi 16 } 8 17 9 18 # parameters given by pammount … … 36 45 [ -z "$KDEHOME" ] && exit 1 37 46 [ -z "$DESKTOP" ] && exit 1 38 [ -z "$ DOTLOCAL" ] && exit 147 [ -z "$USERDIRS" ] && exit 1 39 48 40 # creating necessary dirs in user's home 41 for i in $HOME/.kde $HOME/.kde/Autostart $HOME/.kde/share $HOME/Desktop $HOME/.local; do 42 [[ -L "$i" || -f "$i" ]] && rm -rf $i 43 [ -d "$i" ] || mkdir -p $i 44 chown $USER $i 45 chmod 700 $i 46 done 49 # move user's dir back from /tmp 50 for i in $USERDIRS; do 51 rm -rf $HOME/$i 52 mkdir -p $HOME/$i 53 for d in cache socket tmp; do 54 rm -rf /tmp/${i}-${USER}/${d}-* 55 done 56 [ -d "/tmp/${i}-${USER}" -a -d "$HOME/$i" ] && rsync -a --delete /tmp/${i}-${USER}/ $HOME/$i/ 57 chmod 700 $HOME/$i 58 done 47 59 48 # syncing user's kde settings 49 [ -d "$KDEHOME/share" ] && rsync -a --delete $KDEHOME/share/ $HOME/.kde/share/ 50 51 # syncing user's kde Autostart 52 [ -d "$KDEHOME/Autostart" ] && rsync -a --delete $KDEHOME/Autostart/ $HOME/.kde/Autostart/ 53 54 # syncing user's desktop 55 [ -d "$DESKTOP" ] && rsync -a --delete $DESKTOP/ $HOME/Desktop/ 56 57 # syncing user's .local 58 [ -d "$DOTLOCAL" ] && rsync -a --delete $DOTLOCAL/ $HOME/.local/ 59 60 # removing kdehome and desktop dirs 61 rm -rf $KDEHOME 62 rm -rf $DESKTOP 63 rm -rf $DOTLOCAL 60 # handle .cache and .gvfs 61 for i in .cache .gvfs; do 62 [ -e "/tmp/${i}-${USER}" ] && rm -rf /tmp/${i}-${USER} 63 [ -e "$HOME/$i" ] && rm -rf $HOME/$i 64 done 64 65 65 66 fi … … 67 68 # umount given share 68 69 umount $MNTPT 69 status=$? 70 mounted || exit 0 71 sleep 5 72 umount $MNTPT 73 mounted || exit 0 74 kill -9 `lsof -t $MNTPT` 75 umount $MNTPT || umount -l $MNTPT 76 RC="$?" 70 77 71 # if unmounting fails kill processes which prevent $MNTPT from unmounting 72 # and do a second try 73 if [ "$status" -ne 0 ]; then 78 exit $RC 74 79 75 sleep 576 for i in `lsof | grep $MNTPT | awk '{ print $2 }'`; do77 kill -9 $i78 done79 umount $MNTPT80 status=$?81 82 # once again83 if [ "$status" -ne 0 ]; then84 85 sleep 586 for i in `lsof | grep $MNTPT | awk '{ print $2 }'`; do87 kill -9 $i88 done89 umount $MNTPT90 status=$?91 92 fi93 94 fi95 96 # exit with umount status97 exit $status98
Note: See TracChangeset
for help on using the changeset viewer.
