diff --git a/homedirs.sh b/homedirs.sh index d975b53961c2639476e470ce6e67cbbcd0d00d9a..e80216a15c4e326faa318c3f7ef0d5c3d7c0ac1c 100755 --- a/homedirs.sh +++ b/homedirs.sh @@ -6,6 +6,7 @@ set -e # trap read debug rgroup="g_r_users" +localrgroup="local_r_users" home="/homes/" work="/work/" rstudiodir=".rstudio" @@ -21,7 +22,9 @@ fi # make sure that fresh credentials are pulled sss_cache -E +unset rusers rusers="$(getent group $rgroup | awk -F '[/:]' '{print $4}')" +rusers="$rusers,$(getent group $localrgroup | awk -F '[/:]' '{print $4}')" IFS=$',' read -a ruserar <<< "$rusers" for ruser in "${ruserar[@]}" do @@ -29,17 +32,17 @@ for ruser in "${ruserar[@]}" if [ ! -d $home$ruser ] then mkhomedir_helper $ruser $umask $skel - setfacl -m u:$monitoringuser:rx $home$ruser + setfacl -m u:$monitoringuser:rx $home$ruser fi # symlink .rstudio directory to work storage - if [ ! -d $work$ruser$rstudiodir ] + if [ ! -d $work$ruser/$rstudiodir ] then mkdir -p $work$ruser/$rstudiodir mkdir -p $home$ruser/$rstudiodir - setfacl -m u:$monitoringuser:rx $work$ruser - setfacl -m u:$monitoringuser:rx $work$ruser/$rstudiodir - setfacl -m u:$ruser:rwx $work$ruser - setfacl -m u:$ruser:rwx $work$ruser/$rstudiodir + setfacl -m u:$monitoringuser:rx $work$ruser + setfacl -m u:$monitoringuser:rx $work$ruser/$rstudiodir + setfacl -m u:$ruser:rwx $work$ruser + setfacl -m u:$ruser:rwx $work$ruser/$rstudiodir mount --bind $work$ruser/$rstudiodir $home$ruser/$rstudiodir #ln -s $work$ruser/$rstudiodir $home$ruser/$rstudiodir #chattr +i $home$ruser/$rstudiodir