如何批量建用户!!!!!!!急!!!!
:-(我用RED HAT 9.0服务器版,需要建立240个用户用于上课,并要装几台同样的服务器,请问如何作,听说可以写shell程序解决,我不会,请大虾伸手…………………………………………………………………………………………………………………… 多给点信息呀,不然怎么帮忙? :oops: 呵呵,我又来客串。
一、批量建立用户可以用newusers命令来完成,格式为:
newusers users
其中文件users文件采用与/etc/passwd文件相同的格式,只不过是口令那一列要用明文的密码,更多的帮助请看newusers的手册页。
二、批量安装系统要用到Kickstart工具,但这个就不是一两句话就讲得清楚的了 ... newusers 果然好东西!
感谢! 我恰好知道而已,见笑了:lol: newusers 果然好东西!
感谢!
果然是好东西啊 :-D ,多谢lanche大哥
PS:零二年的夏天,我恰好在LinuxSir.org上翻到早前你写的那个批量添加用户的脚本 :mrgreen: 手工修改/etc/passwd 那个脚本是以前写的,而且好像问题比较多。
后来在chinaunix.net有朋友作了补充。
其实,完全可以写更简单的。
比如 newusers 就是很好的啊 :-D CU上的没看到,兄台不如把它再发上来,就当是给公社上其他兄弟一个学习shell编程的参考 :-D 这个是 arbor 兄修改过的:
新功能:为新用户指定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 '$1==i {printf "%s",$1;next;}' i="$i"`
do
if [ -z $_NUM ] ; then
echo "There is no user to add!!"
exit 0
else
_SMBNAME=`awk '$1==i {printf "%s",$2;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://bbs.chinaunix.net/forum/viewtopic.php?show_type=old&t=183376&highlight=零二年的夏天 俺研究ing ...... :mrgreen:
有不明白的地方还请兄台多多指教 :-) 兄弟言重了。
其实这样的脚本网络上很多,
很多时候是需要根据个人的不同情况来处理的。
不过,也可以考虑写个周全一些的。只是脚本能力有限啊。 建议重新写过一个功能全一些的,这样比较痛快,呵呵 :mrgreen:
页:
[1]