1#!/bin/sh 2 3config=/bin/config 4 5SMB_CONF_DIR=/tmp/config 6SMB_PASSWD_DIR=/etc/samba/smbpasswd 7 8# unset 9rm -f $SMB_CONF_DIR/passwd+ 10rm -f $SMB_CONF_DIR/gshadow 11rm -f $SMB_CONF_DIR/shadow 12 13# user setting 14echo "root:!:0:0:root:/tmp:/bin/ash" > $SMB_CONF_DIR/passwd 15echo "guest:*:65534:65534:guest:/tmp/ftpadmin:/bin/ash" >>$SMB_CONF_DIR/passwd 16echo "nobody:*:65534:65534:nobody:/var:/bin/false" >>$SMB_CONF_DIR/passwd 17echo "daemon:*:65534:65534:daemon:/var:/bin/false" >>$SMB_CONF_DIR/passwd 18 19# group setting 20echo "root:x:0:" > $SMB_CONF_DIR/group 21echo "admin:x:1:" >>$SMB_CONF_DIR/group 22echo "guest:x:65534:" >>$SMB_CONF_DIR/group 23 24#/bin/adduser -G admin admin -D -H 25(sleep 1; echo "$($config get http_passwd)"; sleep 1; echo "$($config get http_passwd)") | /bin/adduser -G admin admin -H -h /tmp/ftpadmin -s /bin/ash 26echo "guest::10957:0:99999:7:::" >> $SMB_CONF_DIR/shadow 27 28# clear smbpasswd file 29echo -n "" > $SMB_PASSWD_DIR 30 31/usr/bin/smbpasswd admin "$($config get http_passwd)" 32/usr/bin/smbpasswd guest "" 33 34readycloud_enable=`${config} get readycloud_enable` 35#readycloud_enable=1 36if [ $readycloud_enable -eq 1 ]; then 37i=0 38id=500 39while [ $i -le 9 ]; do 40 readycloud_user="`${config} get readycloud_user$i`" 41 if [ "x$readycloud_user" != "x" ]; then 42 username=`echo $readycloud_user | awk '{print $1}'` 43 userpasswd=`echo $readycloud_user | awk '{print $3}'` 44 echo "$username:x:$id:" >> $SMB_CONF_DIR/group 45 (sleep 1; echo $userpasswd; sleep 1; echo $userpasswd) | /bin/adduser -G $username $username -H -h /tmp/ftpadmin -s /bin/ash 46 /usr/bin/smbpasswd $username $userpasswd 47 else 48 break; 49 fi 50 let i=$i+1 51 let id=$id+1 52# admin permission for cloud user 53sed -i "s/$username\:x\:$id/$username\:x\:500/g" $SMB_CONF_DIR/passwd 54done 55fi 56 57# Root permission for admin 58# sed -i "s/admin\:x\:500/admin\:x\:0/g" $SMB_CONF_DIR/passwd 59