Changeset 538
- Timestamp:
- 10/08/09 22:12:22 (2 years ago)
- Location:
- client/linuxmuster-client/trunk
- Files:
-
- 7 added
- 1 deleted
- 13 edited
-
debian/changelog (modified) (1 diff)
-
debian/config (modified) (5 diffs)
-
debian/install (modified) (1 diff)
-
debian/links (modified) (1 diff)
-
debian/postinst (modified) (2 diffs)
-
etc/Default (modified) (2 diffs)
-
etc/config (added)
-
etc/linuxmuster-client.conf (deleted)
-
etc/profile.exclude (added)
-
jaunty/templates/etc/pam.d/common-account (added)
-
jaunty/templates/etc/pam.d/common-auth (added)
-
jaunty/templates/etc/pam.d/common-pammount (added)
-
jaunty/templates/etc/pam.d/common-password (added)
-
jaunty/templates/etc/pam.d/common-session (added)
-
jaunty/templates/etc/security/pam_mount.conf.xml (modified) (1 diff)
-
share/config (modified) (1 diff)
-
share/helperfunctions.sh (modified) (1 diff)
-
share/mount.sh (modified) (4 diffs)
-
share/profile (modified) (1 diff)
-
share/supported_distros (modified) (1 diff)
-
share/umount.sh (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
client/linuxmuster-client/trunk/debian/changelog
r537 r538 1 linuxmuster-client (0.9.13-1) testing; urgency=low 2 3 * some improvements according to user dir syncing at begin and end of session. 4 (-> config, profile, mount.sh, umount.sh, Default). 5 * added iocharset=utf8 to and removed wsize,rsize mount options from pam_mount.conf.xml template. 6 * improved package configuration: values for ldap server and base dn were read from package ldap-auth-config. 7 * moved client config file to /etc/linuxmuster-client/config 8 * added config file /etc/linuxmuster-client/profile.exclude 9 * added experimental support for Karmic Koala. 10 11 -- Thomas Schmitt <schmitt@lmz-bw.de> Thu, 8 Oct 2009 21:42:49 +0200 12 1 13 linuxmuster-client (0.9.12-1) testing; urgency=low 2 14 -
client/linuxmuster-client/trunk/debian/config
r537 r538 7 7 8 8 # source config 9 [ -e /etc/linuxmuster-client .conf ] && . /etc/linuxmuster-client.conf9 [ -e /etc/linuxmuster-client/config ] && . /etc/linuxmuster-client/config 10 10 11 11 db_version 2.0 … … 17 17 18 18 # ldap server uri 19 db_get ldap-auth-config/ldapns/ldap-server || true 20 db_set shared/ldapns/ldap-server ${RET#*\/\/} || true 19 21 while [ -z "$INPUT" ]; do 20 22 db_input $PRIORITY shared/ldapns/ldap-server || true … … 23 25 INPUT=$RET 24 26 done 27 db_set ldap-auth-config/ldapns/ldap-server $INPUT || true 25 28 26 29 # ldap basedn 27 30 unset INPUT 31 db_get ldap-auth-config/ldapns/base-dn || true 32 db_set shared/ldapns/base-dn $RET || true 28 33 while [ -z "$INPUT" ]; do 29 34 db_input $PRIORITY shared/ldapns/base-dn || true … … 32 37 INPUT=$RET 33 38 done 39 db_set ldap-auth-config/ldapns/base-dn $INPUT || true 34 40 35 41 # template user … … 39 45 40 46 # firefox 47 [ -n "$FIREFOX" ] && FIREFOX=`echo $FIREFOX | tr A-Z a-z` 41 48 if [ "$FIREFOX" = "yes" ]; then 42 db_set linuxmuster-client/firefox true || true49 db_set linuxmuster-client/firefox true || true 43 50 else 44 db_set linuxmuster-client/firefox false || true51 db_set linuxmuster-client/firefox false || true 45 52 fi 46 53 db_input $PRIORITY linuxmuster-client/firefox || true -
client/linuxmuster-client/trunk/debian/install
r535 r538 1 etc/Default etc/gdm/PostLogin/ 2 etc/linuxmuster-client.conf etc/ 3 common/* var/lib/linuxmuster-client/common/ 4 hardy/* var/lib/linuxmuster-client/hardy/ 5 jaunty/* var/lib/linuxmuster-client/jaunty/ 6 etch/* var/lib/linuxmuster-client/etch/ 7 share/* usr/share/linuxmuster-client/ 1 etc/Default etc/gdm/PostLogin/ 2 etc/config etc/linuxmuster-client/ 3 etc/profile.exclude etc/linuxmuster-client/ 4 common/* var/lib/linuxmuster-client/common/ 5 hardy/* var/lib/linuxmuster-client/hardy/ 6 jaunty/* var/lib/linuxmuster-client/jaunty/ 7 etch/* var/lib/linuxmuster-client/etch/ 8 share/* usr/share/linuxmuster-client/ 8 9 debian/linuxmuster-hostname etc/init.d/ 9 10 -
client/linuxmuster-client/trunk/debian/links
r535 r538 1 1 var/lib/linuxmuster-client/hardy var/lib/linuxmuster-client/intrepid 2 var/lib/linuxmuster-client/jaunty var/lib/linuxmuster-client/karmic 2 3 -
client/linuxmuster-client/trunk/debian/postinst
r537 r538 32 32 binpath=bin 33 33 cups=cupsys 34 if grep -q "$jaunty" /etc/issue; then 34 if grep -q "$karmic" /etc/issue; then 35 echo "This is $karmic!" 36 distro=karmic 37 cups=cups 38 elif grep -q "$jaunty" /etc/issue; then 35 39 echo "This is $jaunty!" 36 40 distro=jaunty … … 145 149 146 150 # patch package configfile 147 [ -e /etc/linuxmuster-client .conf ] && cp /etc/linuxmuster-client.conf /etc/linuxmuster-client.conf.dpkg-old148 if grep -q ^TEMPLATE_USER /etc/linuxmuster-client .conf; then149 sed -e "s|^TEMPLATE_USER=.*|TEMPLATE_USER=$template_user|" -i /etc/linuxmuster-client .conf151 [ -e /etc/linuxmuster-client/config ] && cp /etc/linuxmuster-client/config /etc/linuxmuster-client/config.dpkg-old 152 if grep -q ^TEMPLATE_USER /etc/linuxmuster-client/config; then 153 sed -e "s|^TEMPLATE_USER=.*|TEMPLATE_USER=$template_user|" -i /etc/linuxmuster-client/config 150 154 else 151 echo "TEMPLATE_USER=$template_user" > /etc/linuxmuster-client .conf155 echo "TEMPLATE_USER=$template_user" > /etc/linuxmuster-client/config 152 156 fi 153 if grep -q ^FIREFOX /etc/linuxmuster-client .conf; then154 sed -e "s|^FIREFOX=.*|FIREFOX=$firefox|" -i /etc/linuxmuster-client .conf157 if grep -q ^FIREFOX /etc/linuxmuster-client/config; then 158 sed -e "s|^FIREFOX=.*|FIREFOX=$firefox|" -i /etc/linuxmuster-client/config 155 159 else 156 echo "FIREFOX=$firefox" >> /etc/linuxmuster-client .conf160 echo "FIREFOX=$firefox" >> /etc/linuxmuster-client/config 157 161 fi 158 162 -
client/linuxmuster-client/trunk/etc/Default
r535 r538 8 8 9 9 # source settings 10 . /etc/linuxmuster-client .conf|| exit 110 . /etc/linuxmuster-client/config || exit 1 11 11 . /usr/share/linuxmuster-client/config || exit 1 12 12 . /usr/share/linuxmuster-client/helperfunctions.sh || exit 1 … … 54 54 # iterate over profile directories and copy them to users home 55 55 for i in $PROFILE_DIRS; do 56 [ -e "$HOME/$i" ] && rm -rf$HOME/$i57 [ -e "$ PROFILE_HOME/$i" ] && cp -a $PROFILE_HOME/$i $HOME56 [ -e "$HOME/$i" ] || mkdir -p $HOME/$i 57 [ -e "$HOME/$i" -a -e "$PROFILE_HOME/$i" ] && rsync -a --delete --exclude-from /etc/linuxmuster-client/profile.exclude $PROFILE_HOME/$i/ $HOME/$i/ 58 58 [ -e "$HOME/$i" ] && chown -R $USER $HOME/$i 59 59 done -
client/linuxmuster-client/trunk/jaunty/templates/etc/security/pam_mount.conf.xml
r535 r538 14 14 <umount>/usr/share/linuxmuster-client/umount.sh %(USER) %(MNTPT)</umount> 15 15 16 17 18 16 <mntcheck>/bin/mount</mntcheck> 19 17 20 18 <pmvarrun>/usr/sbin/pmvarrun -u %(USER) -d -o %(OPERATION)</pmvarrun> 21 19 22 <volume options="rw,nosuid,nodev, wsize=8192,rsize=8192,nobrl" user="*" mountpoint="~" path="%(USER)" server="@@serverip@@" fstype="cifs" />20 <volume options="rw,nosuid,nodev,iocharset=utf8,nobrl" user="*" mountpoint="~" path="%(USER)" server="@@serverip@@" fstype="cifs" /> 23 21 24 <volume options="rw,nosuid,nodev, wsize=8192,rsize=8192" user="*" mountpoint="@@studentshome@@" path="students" server="@@serverip@@" fstype="cifs" />22 <volume options="rw,nosuid,nodev,iocharset=utf8" user="*" mountpoint="@@studentshome@@" path="students" server="@@serverip@@" fstype="cifs" /> 25 23 26 <volume options="rw,nosuid,nodev, wsize=8192,rsize=8192" user="*" mountpoint="@@sharehome@@" path="shares" server="@@serverip@@" fstype="cifs" />24 <volume options="rw,nosuid,nodev,iocharset=utf8" user="*" mountpoint="@@sharehome@@" path="shares" server="@@serverip@@" fstype="cifs" /> 27 25 28 <volume options="rw,nosuid,nodev, wsize=8192,rsize=8192" user="*" mountpoint="@@progsdir@@" path="pgm" server="@@serverip@@" fstype="cifs" />26 <volume options="rw,nosuid,nodev,iocharset=utf8" user="*" mountpoint="@@progsdir@@" path="pgm" server="@@serverip@@" fstype="cifs" /> 29 27 30 <volume options="rw,nosuid,nodev, wsize=8192,rsize=8192" user="*" mountpoint="@@cdsdir@@" path="cdrom" server="@@serverip@@" fstype="cifs" />28 <volume options="rw,nosuid,nodev,iocharset=utf8" user="*" mountpoint="@@cdsdir@@" path="cdrom" server="@@serverip@@" fstype="cifs" /> 31 29 32 <volume options="rw,nosuid,nodev, wsize=8192,rsize=8192" user="*" mountpoint="@@taskscache@@" path="tasks" server="@@serverip@@" fstype="cifs" />30 <volume options="rw,nosuid,nodev,iocharset=utf8" user="*" mountpoint="@@taskscache@@" path="tasks" server="@@serverip@@" fstype="cifs" /> 33 31 34 <volume options="rw,nosuid,nodev, wsize=8192,rsize=8192" user="*" mountpoint="@@backupmntpoint@@" path="backup" server="@@serverip@@" fstype="cifs" />32 <volume options="rw,nosuid,nodev,iocharset=utf8" user="*" mountpoint="@@backupmntpoint@@" path="backup" server="@@serverip@@" fstype="cifs" /> 35 33 36 34 </pam_mount> -
client/linuxmuster-client/trunk/share/config
r535 r538 24 24 PROGSDIR="$SAMBAHOME/progs" 25 25 CDSDIR="$SAMBAHOME/cds" 26 USERDIRS="Desktop .kde .local" 26 27 MANDATORY_GROUPS="plugdev powerdev pulse-rt" 27 28 -
client/linuxmuster-client/trunk/share/helperfunctions.sh
r400 r538 14 14 # get user homedir 15 15 get_userhome() { 16 userhomecache=/tmp/. cache-$USER16 userhomecache=/tmp/.home-$USER 17 17 if [ ! -s "$userhomecache" ]; then 18 18 getent passwd $USER | cut -f6 -d: > $userhomecache -
client/linuxmuster-client/trunk/share/mount.sh
r535 r538 14 14 OPTIONS="$5" 15 15 16 # no pammount for local users 17 grep -q ^${USER}: /etc/passwd && exit 0 18 16 19 # check if params are all set 17 20 [ -z "$SERVER" ] && exit 1 … … 21 24 [ -z "$OPTIONS" ] && exit 1 22 25 23 # no pam_mount stuff for local users 24 if grep -q ^${USER}: /etc/passwd; then 25 # date >> /tmp/pammount.log 26 # echo "$SERVER" >> /tmp/pammount.log 27 # echo "$VOLUME" >> /tmp/pammount.log 28 # echo "$MNTPT" >> /tmp/pammount.log 29 # echo "$USER" >> /tmp/pammount.log 30 # echo >> /tmp/pammount.log 31 exit 0 32 fi 26 # source profile 27 . /usr/share/linuxmuster-client/profile || exit 1 33 28 34 # source helperfunctions 35 . /usr/share/linuxmuster-client/helperfunctions.sh || exit 1 29 # check if important variables are set 30 [ -z "$KDEHOME" ] && exit 1 31 [ -z "$DESKTOP" ] && exit 1 32 [ -z "$USERDIRS" ] && exit 1 36 33 37 34 # fetch user's homedir … … 46 43 47 44 # if userhome not mounted do exit 48 mount | grep -q $HOME || exit 1 49 50 # source profile and check if important variables are set 51 . /usr/share/linuxmuster-client/profile || exit 1 52 [ -z "$KDEHOME" ] && exit 1 53 [ -z "$DESKTOP" ] && exit 1 54 [ -z "$DOTLOCAL" ] && exit 1 55 56 # creating user's temporary dirs 57 for i in $KDEHOME $KDEHOME/Autostart $KDEHOME/share $DESKTOP $DOTLOCAL; do 58 [[ -L "$i" || -e "$i" ]] && rm -rf $i 59 [ -d "$i" ] || mkdir -p $i 60 chown $USER $i 61 chmod 700 $i 62 done 63 64 # syncing user's kde settings 65 if [ -d "$HOME/.kde/share" ]; then 66 rsync -a --delete $HOME/.kde/share/ $KDEHOME/share/ 67 elif [ -d "$HOME/.kde.old/share" ]; then 68 rsync -a --delete $HOME/.kde.old/share/ $KDEHOME/share/ 69 fi 70 71 # syncing user's kde autostart folder 72 if [ -d "$HOME/.kde/Autostart" ]; then 73 rsync -a --delete $HOME/.kde/Autostart/ $KDEHOME/Autostart/ 74 elif [ -d "$HOME/.kde.old/Autostart" ]; then 75 rsync -a --delete $HOME/.kde.old/Autostart/ $KDEHOME/Autostart/ 76 fi 77 78 # syncing user's desktop 79 if [ -d "$HOME/Desktop" ]; then 80 rsync -a --delete $HOME/Desktop/ $DESKTOP/ 81 elif [ -d "$HOME/.Desktop.old" ]; then 82 rsync -a --delete $HOME/.Desktop.old/ $DESKTOP/ 83 fi 84 85 # syncing user's .local 86 if [ -d "$HOME/.local" ]; then 87 rsync -a --delete $HOME/.local/ $DOTLOCAL/ 88 elif [ -d "$HOME/.local.old" ]; then 89 rsync -a --delete $HOME/.local.old/ $DOTLOCAL/ 90 fi 91 92 # move .kde folder in user's home and link it to $KDEHOME 93 if [ -d "$HOME/.kde" ]; then 94 [ -e "$HOME/.kde.old" ] && rm -rf $HOME/.kde.old 95 mv $HOME/.kde $HOME/.kde.old 96 fi 97 [ -e "$HOME/.kde" ] && rm -rf $HOME/.kde 98 ln -s $KDEHOME $HOME/.kde 99 chown $USER $HOME/.kde 100 101 # move desktop folder in user's home and link it to $DESKTOP 102 if [ -d "$HOME/Desktop" ]; then 103 [ -e "$HOME/.Desktop.old" ] && rm -rf $HOME/.Desktop.old 104 mv $HOME/Desktop $HOME/.Desktop.old 105 fi 106 [ -e "$HOME/Desktop" ] && rm -rf $HOME/Desktop 107 ln -s $DESKTOP $HOME/Desktop 108 chown $USER $HOME/Desktop 109 110 # move .local folder in user's home and link it to $DOTLOCAL 111 if [ -d "$HOME/.local" ]; then 112 [ -e "$HOME/.local.old" ] && rm -rf $HOME/.local.old 113 mv $HOME/.local $HOME/.local.old 114 fi 115 [ -e "$HOME/.local" ] && rm -rf $HOME/.local 116 ln -s $DOTLOCAL $HOME/.local 117 chown $USER $HOME/.local 118 45 cat /proc/mounts | grep -qw $HOME || exit 1 119 46 120 47 # add user to mandatory groups … … 125 52 done 126 53 54 # move user's dirs temporarily to /tmp 55 for i in $USERDIRS; do 56 [ -e "/tmp/${i}-${USER}" -a ! -d "/tmp/${i}-${USER}" ] && rm -rf /tmp/${i}-${USER} 57 [ -d "/tmp/${i}-${USER}" ] || mkdir -p /tmp/${i}-${USER} 58 [ -d "$HOME/$i" ] && rsync -a --delete $HOME/$i/ /tmp/${i}-${USER}/ 59 rm -rf $HOME/$i 60 ln -s /tmp/${i}-${USER} $HOME/$i 61 chown $USER /tmp/${i}-${USER} -R 62 chmod 700 /tmp/${i}-${USER} 63 done 64 65 # handle .cache and .gvfs 66 for i in .cache .gvfs; do 67 [ -e "/tmp/${i}-${USER}" ] && rm -rf /tmp/${i}-${USER} 68 [ -e "$HOME/$i" ] && rm -rf $HOME/$i 69 mkdir -p /tmp/${i}-${USER} 70 chown $USER /tmp/${i}-${USER} 71 chmod 700 /tmp/${i}-${USER} 72 ln -s /tmp/${i}-${USER} $HOME/${i} 73 done 74 75 # remove .pulse dir 76 rm -rf $HOME/.pulse 77 -
client/linuxmuster-client/trunk/share/profile
r535 r538 10 10 11 11 # Redirects KDE Home to /tmp 12 export KDEHOME=/tmp/.kde _${USER}12 export KDEHOME=/tmp/.kde-${USER} 13 13 14 14 # user's desktop has also to be in /tmp 15 export DESKTOP=/tmp/Desktop_${USER} 16 17 # user's .local has also to be in /tmp 18 export DOTLOCAL=/tmp/.local_${USER} 15 export DESKTOP=/tmp/Desktop-${USER} 19 16 20 17 # Redirects access token file for dcopserver to /tmp -
client/linuxmuster-client/trunk/share/supported_distros
r488 r538 1 karmic="Ubuntu karmic" 1 2 jaunty="Ubuntu 9.04" 2 3 intrepid="Ubuntu 8.10" -
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.
