#!/bin/bash # share fix # use this script to rebuild default configs for shares if the ._share becomes # broken for whatever reason. echo "Activating Share rebuilder" volume="data" echo "Querying readynasd for list of volumes..." x=$(rn_nml -g volumes | grep "resource-id" | sed 's/^.*id="//;s/".*//;') number=$(echo $x | wc -w) echo "$number volume(s) found." for volume in $x do for i in `find /$volume/ -mindepth 2 -maxdepth 2 -type d | egrep -v "\/$volume\/home|\/$volume\/.apps|\/$volume\/.vault|\/$volume\/.purge|\/$volume\/._share|\/$volume\/.timemachine|\/$volume\/.TemporaryItems|.iscsi" | sed "s/\/$volume\///g;s/\/.*//g" | sort | uniq` do mkdir -p /$volume/._share/${i} cd /$volume/._share/${i} echo "share" > datasettype.conf echo "0,25000" > recycle.conf echo "#dashboard:available=0 \"/$volume/$i\" 127.0.0.1(ro,insecure,insecure_locks,root_squash,anongid=99,anonuid=99,no_subtree_check,sync)" > nfs.conf echo "" > snapdir.conf echo "0 0 0 * * * 0" > snapshot.conf cat > afp.conf << EOF [$i] available = 1 path = /$volume/$i invalid users = "guest","nobody","@guest","@nogroup" admin group = admin EOF cat > fs.conf << EOF compression = 0 bitrotprotection = 0 refquota = 0 EOF cat > ftp.conf << EOF available 0 default_access writeable mask fmask dmask user_rw group_rw host_rw user_ro group_ro host_ro EOF cat > samba.conf << EOF [$i] path = /$volume/$i comment = "$i folder" force create mode = 0666 create mask = 0666 force directory mode = 1777 directory mask = 1777 admin users = "+admin","Administrator" writeable = 1 follow symlinks = 1 EOF chown root.root datasettype.conf recycle.conf snapdir.conf snapshot.conf; chown admin.admin afp.conf fs.conf ftp.conf nfs.conf samba.conf done done