批量添加smb用户脚本--摘自linuxsir

发表于:2007-05-26来源:作者:点击数: 标签:
批量添加用户脚本--摘自 linux sir 批量添加用户脚本--摘自linuxsir 新功能:为新用户指定shell,比如我让他们只有收发邮件,使用ftp,没有登录的权限,可以指定一个不存在的shell:/bin/null,然后在shells文件中间添加这个shell。如果要这个用户可以登录但
批量添加用户脚本--摘自linuxsir

新功能:为新用户指定shell,比如我让他们只有收发邮件,使用ftp,没有登录的权限,可以指定一个不存在的shell:/bin/null,然后在shells文件中间添加这个shell。如果要这个用户可以登录但是只具有修改密码的功能,可以把修改密码的命令/usr/bin/passwd作为shell,这样当此用户登录后即显示要求输入新密码。

我在使用过程中发现_SMBGROUP必须是一个已经存在的组!

#!/bin/sh
#Name:smbadd
#Des:To add some samba user
#Author:PopZslam

_PASSWD=****** #You can defined it youself.
_SMBNAME=user
_SMBGROUP=users #Sorry, I forget the samba group's name.You can edit this script and input the currect name.
_SMBSHELL=/bin/null #Defined user's shell
MyAdd ()
{
adduser $_SMBNAME -g $_SMBGROUP -s $_SMBSHELL
echo "The smbuser" $_SMBNAME "is added to "$_SMBGROUP!
echo "Set password for smbuser"
echo $_PASSWD|passwd $_SMBNAME --stdin
}

USERLIST ()
{
if [ -f ~/smbuserlist ] ; then

i=1
while
_NUM=`head -n $i ~/smbuserlist|awk '==i {printf "%s",;next;}' i="$i"`
do
if [ -z $_NUM ] ; then
echo "There is no user to add!!"
exit 0
else
_SMBNAME=`awk '==i {printf "%s",;next;}' i="$i" ~/smbuserlist`
MyAdd
i=`expr $i + 1`
fi
done
else
echo "You Must create a file named \"smbuserlist\" first!"
fi
}

#main part
USERLIST
#End

原文转自:http://www.ltesting.net