QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1106|回复: 12

如何批量建用户!!!!!!!急!!!!

[复制链接]
发表于 2004-10-25 15:40:46 | 显示全部楼层 |阅读模式
:-(
我用RED HAT 9.0服务器版,需要建立240个用户用于上课,并要装几台同样的服务器,请问如何作,听说可以写shell程序解决,我不会,请大虾伸手……………………………………………………………………………………………………………………
发表于 2004-10-25 16:31:35 | 显示全部楼层
多给点信息呀,不然怎么帮忙?
回复

使用道具 举报

发表于 2004-10-25 22:31:12 | 显示全部楼层
呵呵,我又来客串。

一、批量建立用户可以用newusers命令来完成,格式为:

newusers users

其中文件users文件采用与/etc/passwd文件相同的格式,只不过是口令那一列要用明文的密码,更多的帮助请看newusers的手册页。

二、批量安装系统要用到Kickstart工具,但这个就不是一两句话就讲得清楚的了 ...
回复

使用道具 举报

发表于 2004-10-25 22:42:23 | 显示全部楼层
newusers 果然好东西!
感谢!
回复

使用道具 举报

发表于 2004-10-25 22:52:57 | 显示全部楼层
我恰好知道而已,见笑了  
回复

使用道具 举报

发表于 2004-10-26 12:42:03 | 显示全部楼层
[quote:f9e42b837b="零二年的夏天"]newusers 果然好东西!
感谢![/quote]
果然是好东西啊 ,多谢lanche大哥

PS:零二年的夏天,我恰好在LinuxSir.org上翻到早前你写的那个批量添加用户的脚本
回复

使用道具 举报

发表于 2004-10-26 17:53:10 | 显示全部楼层
手工修改/etc/passwd
回复

使用道具 举报

发表于 2004-10-26 21:46:09 | 显示全部楼层
那个脚本是以前写的,而且好像问题比较多。
后来在chinaunix.net有朋友作了补充。

其实,完全可以写更简单的。
比如 newusers 就是很好的啊
回复

使用道具 举报

发表于 2004-10-26 21:58:05 | 显示全部楼层
CU上的没看到,兄台不如把它再发上来,就当是给公社上其他兄弟一个学习shell编程的参考
回复

使用道具 举报

发表于 2004-10-26 22:10:18 | 显示全部楼层
这个是 arbor 兄修改过的:  

[code:1]
新功能:为新用户指定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
[/code:1]

文件援引:
http://bbs.chinaunix.net/forum/viewtopic.php?show_type=old&t=183376&highlight=零二年的夏天
回复

使用道具 举报

发表于 2004-10-26 22:26:40 | 显示全部楼层
俺研究ing ......
有不明白的地方还请兄台多多指教 :-)
回复

使用道具 举报

发表于 2004-10-26 22:33:24 | 显示全部楼层
兄弟言重了。
其实这样的脚本网络上很多,
很多时候是需要根据个人的不同情况来处理的。
不过,也可以考虑写个周全一些的。只是脚本能力有限啊。
回复

使用道具 举报

发表于 2004-10-26 22:38:03 | 显示全部楼层
建议重新写过一个功能全一些的,这样比较痛快,呵呵
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-5 20:32 , Processed in 0.049309 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表