diff --git a/server/modules/local-accounts/opt/openslx/scripts/local-accounts_insert-data.sh b/server/modules/local-accounts/opt/openslx/scripts/local-accounts_insert-data.sh index d7d3973b2fc9f9e1c2f0599e8ede20fdfd4390a7..90d4f3b1ba7a5ca7139c3375f90ba92893757915 100755 --- a/server/modules/local-accounts/opt/openslx/scripts/local-accounts_insert-data.sh +++ b/server/modules/local-accounts/opt/openslx/scripts/local-accounts_insert-data.sh @@ -41,7 +41,7 @@ prepare_usb () { fi # checks if usb has an openslx config - if [ -e "$mountpath/Openslx/.config" ]; then + if [ -n "$(find $mountpath/Openslx/ -maxdepth 2 -iname .config)" ]; then echo "$0: /dev/$dev is an openslx ready drive" else echo "$0: /dev/$dev is not ready to be used as an openslx drive" @@ -67,7 +67,8 @@ fi touch "/home/openslx/usb_slx/$dev" unset IFS -users=$(cat "$mountpath/Openslx/.config"); +users=$(for i in $(find "$mountpath/Openslx" -iname .config); do cat $i; done) +#users=$(cat "$mountpath/Openslx/.config"); if [ -z "$users" ]; then echo "$0: $dev has an empty config file" exit 3 # stops openslx users_pendrive execution for this dev @@ -109,7 +110,7 @@ while (( [ $# -gt 0 ] )); do if [ -n "$localID" ] && [ -n "$localGID" ]; then /opt/openslx/scripts/adduser.sh "$passwdf" "$groupf" "$shadowf" #Add to a file what pendrive this user is from - mount --bind $mountpath/Openslx/$username /home/$username + mount --bind $mountpath/Openslx/$username/home /home/$username echo "/dev/$dev" > "/home/openslx/usb_users/$username" #if ext4, change owner to new user and create ecrypted diff --git a/server/modules/local-accounts/opt/openslx/scripts/local-accounts_mount-home.sh b/server/modules/local-accounts/opt/openslx/scripts/local-accounts_mount-home.sh index 6db32a165301860c472e963f423359b2b782ad30..4654f74714795d45a703880c18a3c7f3ffcada26 100755 --- a/server/modules/local-accounts/opt/openslx/scripts/local-accounts_mount-home.sh +++ b/server/modules/local-accounts/opt/openslx/scripts/local-accounts_mount-home.sh @@ -31,7 +31,7 @@ if ( [ "$user_drive_type" = "vfat" ] ); then else #this is a user #save user_names that are mounted to make binding easier after - user_name=$(echo $i | cut -d' ' -f4 | rev | cut -d'/' -f1 | rev ) + user_name=$(echo $i | cut -d' ' -f4 | rev | cut -d'/' -f2 | rev ) users=$(echo "$users $user_name") #check if there is something mounted in this user home( $user_name ) #if so, umount it @@ -49,7 +49,7 @@ if ( [ "$user_drive_type" = "vfat" ] ); then #rebind stuff for i in $users; do - mount --bind ${drive_mount_point}/Openslx/$i /home/$i + mount --bind ${drive_mount_point}/Openslx/$i/home /home/$i done #significatlçy improves speed and leaves the user pendrive without useless files @@ -60,5 +60,3 @@ if ( [ "$user_drive_type" = "ext4" ] ); then echo $0": user drive type is ext4" #do encryption fi - -