脱哥想找一个批量添加用户的方法,首先我感觉简单,写个脚本就解决了。但是后来想到密码怎么处理。试了一下
这种方法添加的用户是添加上了,但是密码在shadow文件中成明文显示,肯定是不对的,这个用户也是不能登录系统的。
后来在网上搜了一下,发现可以建立一个文件,文件的内容要是下面的形式
然后通过一个系统的命令处理一下,即可将shadow中明文密码加密。这样就等于给用户设置密码了。
测试是正常的,所以写了下面这个简单的脚本
其中删除的时候一定要用/bin/rm -f,不能直接用rm -f,否则不能实现自动化。因为系统中rm是做了alias的。
[root@lvs191 ~]# useradd aaa - p 123456
这种方法添加的用户是添加上了,但是密码在shadow文件中成明文显示,肯定是不对的,这个用户也是不能登录系统的。
后来在网上搜了一下,发现可以建立一个文件,文件的内容要是下面的形式
[root@lvs191 ~]# cat user.txt
uaername: passwd
aaa : 123456
然后通过一个系统的命令处理一下,即可将shadow中明文密码加密。这样就等于给用户设置密码了。
/usr/sbin/chpasswd < user . txt
测试是正常的,所以写了下面这个简单的脚本
[ root@lvs191 ~] # cat user . sh
#! / bin/bash
i= 0
while true
do
let i= i+ 1
echo "u" $ i":123456" > > / root/user. txt
echo "createing user u$i ................."
useradd u$i
if [ $i - eq 1000 ]
then
/usr/sbin/chpasswd < /root/user. txt
/bin/rm - f /root/user. txt
exit
fi
done
#if you want to delete all of the user, you can
#i= 0
#while true
#do
# let i= i+ 1
# echo "deleteing user u$i ................."
# userdel - r u$i
# if [ $i - eq 5000 ]
# then
# exit
# fi
#done
其中删除的时候一定要用/bin/rm -f,不能直接用rm -f,否则不能实现自动化。因为系统中rm是做了alias的。
[ root@lvs191 ~] # which rm
alias rm= 'rm -i'
/bin/rm