linux中如何不需要批量创建用户的方法
方法1
Linux系统提供了创建大量用户的工具,可以让您立即创建大量用户,方法如下:
先编辑一个文本用户文件 。每一列按照/etc/passwd密码文件的格式书写,要注意每个用户的用户名、UID、宿主目录都不可以相同,其中密码栏可以留做空白或输入x号。一个范例文件user.txt内容如下(以三个用户为例):
oldboy001:x:1001:1001:oldboy:/home/oldboy001:/bin/bash
oldboy002:x:1002:1002:oldboy:/home/oldboy002:/bin/bash
oldboy003:x:1003:1003:oldboy:/home/oldboy003:/bin/bash
以root身份执行命令/usr/sbin/newusers,从刚创建的用户文件user.txt中导入数据,创建用户:
newusers < user.txt
执行命令/user/sbin/pwunconv 将 /etc/shadow 产生的 shadow 密码解码,然后回写到 /etc/passwd中,并将/etc/shadow的shadow密码栏删掉。这是为了方便下一步的密码转换工作,即先取消 shadow password 功能。
pwunconv
编辑每个用户的密码对照文件,范例文件passwd.txt内容如下:
oldboy001:密码
oldboy002:密码
oldboy003:密码
以root身份执行命令/usr/sbin/chpasswd
创建用户密码,chpasswd 会将经过 /usr/bin/passwd 命令编码过的密码写入 /etc/passwd 的密码栏 。
chpasswd < passwd.txt
确定密码经编码写入/etc/passwd的密码栏后
执行命令 /usr/sbin/pwconv 将密码编码为 shadow password,并将结果写入/etc/shadow
pwconv
温馨提示:若出现以下情况:
[root@oldboyedu ~]# su - oldboy001
-bash-4.2$
解决方案如下:
-bash-4.2$ cp /etc/skel/.bash* .
-bash-4.2$ source ./.bash_profile ./.bashrc
[oldboy001@oldboyedu ~]$
方法 2
批量创建用户和密码,如下所示:
or ((i=1;i<=10;i++));do useradd oldmonkey$i;echo '123456'|passwd
--stdin oldmonkey$i;done
or
seq 10|sed -r 's#(.*)#useradd oldgirl\1;echo '123456'|passwd --stdin oldgirl\1#g'|bash
或者分开,先批量创建用户:
seq –w 20|sed -nr 's#(.*)#useradd oldboy\1#gp'|bash
再批量设置密码:
seq –w 20|sed -nr 's#(.*)#oldboy\1:oldboy\1#gp'|chpasswd
or
seq -w 20|sed -nr 's#(.*)#echo "123456"|passwd --stdin oldboy\1#gp'|bash
批量删除用户:
|sed -nr 's#(.*)#userdel -r oldboy\1#gp'|bash