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