创建用户帐户是Linux管理员的基本任务之一。
我们可以通过运行useradd命令轻松实现这一目标。
但是,如果您想在Linux中创建批量用户,该怎么办?
有什么方法可以执行此操作?
是的,我们在Linux中可以选择执行此操作。据我所知,有两种方法可以实现这一目标。
我们将在本文中解释这些。
每个人都知道用户信息位于/etc/passwd文件中。
这是一个文本文件,其中包含有关每个用户的基本信息。
当我们创建一个新用户时,新用户的详细信息将被添加到该文件中。
创建新用户时,将修改以下四个文件。
/etc/passwd: 用户详细信息将在此文件中更新。
/etc/shadow: 用户密码信息将在此文件中更新。
/etc/group: 该文件中将更新新用户的组详细信息。
/etc/gshadow: 组密码信息将在文件中更新新用户。
可以通过以下两个命令来完成。
useradd: 使用Shell脚本创建新用户或更新默认的新用户信息。
newusers: 批量更新和创建新用户。
方法1:如何使用newusers命令在Linux中创建批量用户帐户?
newusers命令读取给定文件,并使用此信息来更新一组现有用户或创建新用户。 每行的格式与标准密码文件相同。 批量用户创建的通用语法。 # newusers [File_Name] 在执行此操作之前,我们需要从passwd文件中获取最新的GID和UID。 # tail -5 /etc/passwd gdm:x:121:125:Gnome Display Manager:/var/lib/gdm3:/bin/false daygeek:x:1000:1000:daygeek,,,:/home/daygeek:/bin/bash sshd:x:122:65534::/run/sshd:/usr/sbin/nologin thanu:x:1001:1001::/home/thanu:/bin/sh renu:x:1002:1002:Renu,,9600106327,:/home/renu:/bin/bash 创建一个名为的文件user-add.txt,详细信息应采用以下格式。每个用户行应位于单独的行中。 User_Name:Password:UID:GID:Comments:User_Home_Directory:Users_Shell_Name 我已经在文件中添加了五个用户。使用cat命令列出用户。 # cat user-list.txt 2gadmin:2gadmin123:1003:1003::/home/2gadmin:/bin/bash testuser:testuser123:1004:1004::/home/testuser:/bin/bash demouser:demouser123:1005:1005::/home/demouser:/bin/bash sudha:sudha123:1006:1006::/home/sudha:/bin/bash suresh:suresh123:1007:1007::/home/suresh:/bin/bash 运行newusers带有文件名的命令以在Linux系统中创建批量用户。 # newusers user-list.txt 我们可以通过运行以下命令再次确认这一点。 # grep "2gadmin|testuser|demouser|sudha|suresh" /etc/passwd 2gadmin:x:1003:1003::/home/2gadmin:/bin/bash testuser:x:1004:1004::/home/testuser:/bin/bash demouser:x:1005:1005::/home/demouser:/bin/bash sudha:x:1006:1006::/home/sudha:/bin/bash suresh:x:1007:1007::/home/suresh:/bin/bash
方法2:如何在Linux中使用带有外壳脚本的useradd命令创建批量用户帐户?
如果要在Linux系统中创建多个用户,请使用以下脚本。 我在文件中添加了以下三个用户。使用任何文件命令列出文件中存在的用户。 # cat user-list1.txt user1 user2 user3 创建以下小型Shell脚本以实现此目的。 # vi user-add.sh #!/bin/sh for user in `more user-list1.txt` do echo "$user" useradd $user echo "$user@123" | passwd --stdin "$user" chage -d 0 $user done 设置文件的可执行权限user-add.sh。 # chmod +x user-add.sh 最后运行脚本以实现此目的。 # sh user-add.sh user1 Changing password for user user1. passwd: all authentication tokens updated successfully. user2 Changing password for user user2. passwd: all authentication tokens updated successfully. user3 Changing password for user user3. passwd: all authentication tokens updated successfully. 我们可以通过运行以下命令再次确认这一点。 # grep "user1|user2|user3" /etc/passwd user1:x:1008:1008::/home/user1:/bin/sh user2:x:1009:1009::/home/user2:/bin/sh user3:x:1010:1010::/home/user3:/bin/sh
微信扫描下方的二维码阅读本文