linux批量⽤户到组,Linux中⽤户和⽤户组的管理以及如何批量
创建⽤户
⼀、创建新⽤户及管理新⽤户
1)、添加新⽤户
命令格式:useradd [options]username
选项含义: -u:指定⽤户的UID
-c:添加对⽤户的描述性⽂字
-s:指定⽤户的登录脚本
-e:设置账号的实效⽇期
-f:值为0表⽰密码⽴即实效
值为1表⽰密码永久不实效
-
d:指定⽤户的家⽬录
-g:指定⽤户的所属组
-G:指定⽤户的附属组
使⽤该命令添加新⽤户完成后,系统将为⽤户创建⼀个与⽤户名相同的组(且UID=GID),称为私有组,这⼀⽅法是为了能让新⽤户与其他⽤户隔离,确保安全性的措施。
2)、删除⽤户:
命令格式:userdel -rusername
执⾏该命令完成后将会在配置⽂件(/etc/passwd;/etc/shadow;/etc/group;/etc/gshadow)删除和该⽤户相关的记录,另外也会删除⽤户的家⽬录。
3)、管理⽤户zhangsan
①更改⽤户的⼯作⽬录
[root@localhost 桌⾯]#mkdir /newhome
[root@localhost 桌⾯]#chown zhangsan:zhangsan /newhome
[root@localhost 桌⾯]#usermod -m -d /newhome zhangsan
更新使⽤者新的登⼊⽬录。如果给定-m选项,使⽤旧⽬录会搬到新的⽬录        去,如旧⽬录不存在则建个新的。
②更改⽤户的登录shell为/bin/tcsh
[root@localhost 桌⾯]#usermod -s /bin/tcshzhangsan
③更改⽤户的登录名为lisi
[root@localhost 桌⾯]#username -l lisi zhangsan
④锁定⽤户的密码
[root@localhost 桌⾯]#passwd -l zhangsan
这样张三将不能登录
⑤解锁⽤户密码
[root@localhost 桌⾯]#passwd -u zhangsan
⼆、创建新⽤户组及管理⽤户组
1)、添加新组
命令格式:groupadd [options]groupname
选项含义: -g:指定组的GID
-r:创建系统组,其GID低于500
-o:允许GID号不必唯⼀
-f:发现加⼊的账户已经存在时,程序退出
2)、删除组
命令格式:groupdelgroupname
注意:组账户中有⽤户时,要先删除⽤户,再删除组
3)、更改组caiwu的属性
①修改组的GID为502
[root@localhost 桌⾯]#groupmod -g 502 caiwu
②修改组的名称为jiaowu
[root@localhost 桌⾯]#groupmod -n jiaowu caiwu
③给组加密
[root@localhost 桌⾯]#gpasswd caiwu
④指定组管理员为zhangsan
[root@localhost 桌⾯]#gpasswd -A zhangsan caiwu
⑤改变⽤户zhangsan的所属组为caiwu
[root@localhost 桌⾯]#usermod -g caiwu zhangsan
⑥改变⽤户zhangsan的附属组为caiwu
[root@localhost 桌⾯]#usermod -G caiwu zhangsan
三、账户相关的配置⽂件
1)、/etc/passwd
⽤户的账户信息都保存在/etc/passwd中,包含⽤户的完整列表,以及他们的UID、GID等信息,每个⽤户对应⽂件的⼀⾏,并⽤冒号分成七个字段。Linux系统安装完成后会⾃动创建⼀些特殊的账户,除了root账户外,都不能交互式登录进系统,他们承担了系统管理的⼀些任务,这些账户的UID都⼩于500.普通⽤户需要root⽤户来创建,他们的UID是从500开始到65535。
例如:root:x:0:0:root:/root:/bin/bash
各字段说明:
字段1:⽤户名
字段2:⽤户密码,此字段⼀般为x,真正加密过的密码保存在/etc/shadow⽂件中
字段3:⽤户的UID
字段4:⽤户的GID
字段5:⽤户信息,通常包含⽤户的全名
字段6:⽤户的家⽬录,即⽤户登录后所在的初始⽬录
字段7:⽤户登录后的默认shell
2)、/etc/shadow
为了保证系统的安全性,Linux系统通常会对⽤户的⼝令进⾏shadow(影⼦)处理,也就是把⽤户的⼝令保存到只有root⽤户才可读
的/etc/shadow⽂件中,这个⽂件也称影⼦⽂件。该⽂件包含的⽤户名与/etc/passwd⽂件中相同,并存储了⽤户加密⼝令等相关信息。
每个⽤户在⽂件中独占⼀⾏,并且⽤冒号分成九个字段。例如:
root:$6$pD4GMoZ.$57VlWsxR6zQ3QusMVR3aF.YbgRrkxDzQvb1QPl7UZwak5V7ig.wqP0vuhhOM0F4JmP57IuIDBEYWcT3j1E
其中各字段含义如下:
字段1:⽤户名
字段2:⽤户加密后的⼝令
字段3:⼝令修改后的⽇期,数字表⽰从1970年1⽉1⽇⾄修改⽇期的天数
字段4:⼝令在多少天内不能被修改
字段5:⼝令在多少天后必须被修改
linux创建新用户和密码字段6:⼝令在多少天后⽤户账号被禁⽤
字段7:⼝令在到期多少天之前给⽤户发出警告信息
字段8:被禁⽌⽇期,数字表⽰从1970年1⽉1⽇⾄被禁⽇期的天数
字段9:保留字段,尚未使⽤
3)、/etc/group
和/etc/passwd⽂件类似,⽤户组的账号信息都保存在/etc/group中。每个组在⽂件中独占⼀⾏,并且⽤冒号分成4个字段,存储⽤户组
的各种信息。例如:        caiwu:x:504:zhangsan
各字段含义如下:
字段1:⽤户组名称
字段2:⽤户组的⼝令
字段3:⽤户组的组ID号
字段4:附属于该⽤户组的⽤户列表
4)、/etc/gshadow
该⽂件和/etc/shadow⽂件的作⽤类似,Linux系统把⽤户组的⼝令经过加密存放到只有root⽤户才可读的/etc/gshadow⽂件中。 每个组
对应⽂件中的⼀⾏,并⽤冒号分成四个字段。例如:
caiwu:$6$T/Gnv/pvlHstU32$PYjFTW5mNmxCxFjRv7ZPMtoSg6DpXElKufyzJqA6bN1DRNZVeRlLBhGeBOEyAVrsw0chznvuEM
各字段含义如下:
字段1:⽤户组的名称
字段2:⽤户组加密后的⼝令
字段3:⽤户组的管理者,这个字段也可为空,如果有多个⽤户组管理者,⽤⾖号分割
字段4:附属于该⽤户组的⽤户列表,这个字段也可为空,如果有多个⽤户,⽤⾖号分割
四、Linux下批量创建⽤户
需要⽤到的⼏个新命令:
newusers:shadow-utils软件包⾥包含了⼀个newusers命令,他采⽤读取⽂件的⽅式批量创建⽤户,
包括密码。pwunconv:执⾏该命令关闭⽤户的投影密码,他会把密码从shadow⽂件内回存到passwd⽂件内。
pwconv:开启⽤户投影密码的功能。
chpasswd:批量更新⽤户密码的⼯具,把⼀个⽂件内容定向添加到passwd⽂件⾥。
第⼀步:建⽴所需的⽤户组(可以根据⾃⼰的需要创建所需的组)
[root@localhost 桌⾯]#groupadd -g 700 testg
第⼆步:建⽴⽤户⽂件(格式同/etc/passwd⽂件)
[root@localhost 桌⾯]#vim /
user1:x:701:700::/home/user1:/bin/bash
user2:x:702:700::/home/user2:/bin/bash
user3:x:703:700::/home/user3:/bin/bash
第三步:建⽴密码⽂件(格式 ⽤户名:密码)
[root@localhost 桌⾯]#vim /
user1:001
user2:002
user3:003
第四步:批量建⽴⽤户
[root@localhost 桌⾯]#newusers
第五步:关闭⽤户密码投影功能
[root@localhost 桌⾯]#pwunconv
第五步:批量更新⽤户的密码
[root@localhost 桌⾯]#chpasswd
第七步:重新开启⽤户密码的投影功能
[root@localhost 桌⾯]#pwconv
本品博⽂所写内容如有不正确或不合理之处,还请各位博友指正,谢谢。