如何在linux中批量建立用户并设置随机密码

时间:2023-03-08 17:05:12

Ubuntu是基于linux的免费开源操作系统,同时也是真正意义上的“多任务多用户”操作系统,既然是多用户系统,自然就涉及到创建多个用户的问题。同时由于Ubuntu系统中的root用户具有最高权限,无节制地使用root用户容易发生误操作破坏系统,因此在Ubuntu中创建多个用户也是很有必要的。本经验要教大家如何使用Ubuntu命令行批量创建用户并设置随机密码。首先需要明白在Ubuntu中创建一个新用户的命令是 useradd username,如图命令是创建了一个名为“duanzhang666”的用户。虽然创建多个用户可以采用重复执行useradd命令的方法实现,但是这种操作很繁琐,如果在实验环境中要创建100个用户岂不是要重复输入100遍?因此不建议采用这种方法批量创建用户。

如何在linux中批量建立用户并设置随机密码

工具/原料

  • Ubuntu操作系统

方法/步骤

  1. Ubuntu中创建新用户需要先获取root管理员权限,因此先使用sudo su命令获取最高权限。注意获取root权限需要输入你自己的用户密码。

    如何在linux中批量建立用户并设置随机密码
  2. 批量创建20个以“duanzhang”为用户名前缀的用户,命令为:seq -w 20|sed -r "s#(.*)#useradd duanzhang\1#g"|bash 。在这条命令中“duanzhang”表示新建用户的用户名前缀,你可以修改为你需要的其他字符串;“20”表示创建20个用户,也表示这20个用户的用户名后缀分别为1到20。明白这两个字符串表达的意思后你就可以根据你自己的需要修改命令行了。

    如何在linux中批量建立用户并设置随机密码
  3. 查看新用户是否创建成功,命令为:tail -20 /etc/passwd 。这条命令的意思是输出passwd文件的后20行。这里为什么是后20行呢?因为我们刚刚创建了20个新用户,系统会将用户名写入到passwd文件的末尾,每一个用户占据一行,因此后20行就是刚刚生成的20个用户的信息。从图中可以看到已经成功创建了用户名为“duanzhang01”、“duanzhang01”到“duanzhang20”的20个新用户。

    如何在linux中批量建立用户并设置随机密码
  4. 将要修改的用户名和密码写入pass.log文件中,命令为:echo duanzhang{01..20}:$((RANDOM))|tr " " "\n" >pass.log 。命令里的RANDOM表示生成随机数,以作为随机密码。

    如何在linux中批量建立用户并设置随机密码
  5. 查看生成的pass.log文件的内容,以确认是否成功写入文件。从图中可以看到生成了20行数据,每一行使用冒号隔开用户名及其对应的密码,可以看到这20个密码并无规则,是随机的。

    如何在linux中批量建立用户并设置随机密码
  6. 执行chpasswd命令:chpasswd<pass.log 。其中chpasswd命令在Ubuntu中用于批量更改用户密码,它需要先读取我们前一步生成的密码文件pass.log,然后根据该文件内容修改密码。

    如何在linux中批量建立用户并设置随机密码
  7. 根据pass.log文件里记录的这20个用户的密码逐个查看对应的随机密码是否有效。使用su命令切换到新用户并输入pass.log里记录的对应的密码,成功登录,可见用户创建成功。到此“如何在Ubuntu中批量建立用户并设置随机密码”问题成功解决。

    如何在linux中批量建立用户并设置随机密码