Linux——用户和用户组管理

用户和用户组管理

 

1.用户和用户组配置文件

/etc/passwd 用户信息的配置文件

/etc/shadow 用户密码信息的配置文件

/etc/group 用户组信息的配置文件

/etc/gshadow 用户组密码信息的配置文件

查看配置文件的帮助说明  

1/etc/passwd

查看配置文件帮助

man 5 passwd

There is one entry per line, and each line has the format:

account:password:UID:GID:GECOS:directory:shell

技术分享

每一行用户的信息:

用户名称

密码标识

x表示有密码,如果去掉x,不需密码即可登录,只能在本地登录,每个用户的密码文件存放在/etc/shadow中,只有root有读写权限,在开机登录时,系统到shadow文件中读取密码验证。

id

0  超级用户

1-499 系统用户(不能删除,不能登录,供系统某些服务调用)

500-65535 普通用户

所以授予某个用户为超级用户,只需修改其id即可,系统通过id管理每个用户,但其家目录仍保持不变

id:初始组id

初始组(每个用户在创建时,创建一个起始组,默认组名为用户名)

附加组(一个用户可以属于多个添加组)

关于组的详细信息在/etc/group

用户说明

对用户的说明,可以省略

家目录(宿主目录):

用户登录时的默认目录

shell 

/sbin/nologin(暂时限制用户登录)

2/etc/shadow

该配置文件的权限为000,只有root能够读写

技术分享

每一行的信息:

用户名

密码 

*  !!表示没有密码,不能登录

临时禁用某个用户,加密密码前加!,加密密码换算错误,所以登录不进去

密码最后一次修改时间1970.1.1后多少天时间戳

两次密码的修改间隔时间

密码的有效期(99999永久生效)

密码到期前系统警告时间

密码到期后的宽限时间,禁止登录

帐号失效时间时间戳

保留字段

3/etc/group

 技术分享

每一行的信息:

组名

组密码标识

id

组中的附加用户

4/etc/gshadow

 技术分享

组名 组密码

组管理员 组中的附加用户

 

 

 

2.用户的增加、删除和修改

命令名称:useradd

使用:useradd 选项 用户名

选项:

-u 指定uid

-g 指定初始组

-G 添加附加组

-c 添加用户说明

-s 指定用户shell

useradd -u 666 -G test -c “test user” test1

添加一个用户test1,它的uid666,初始组为默认初始组test1,附加组为test,对它的说明test user

常用 useradd 用户名

 

命令名称:passwd

passwd 直接回车,给当前用户设置密码

passwd 用户名 只能root使用

普通用户只能更改自己的密码,且不能加用户名,只能passwd回车,普通用户设置密码必须遵守密码的复杂性原则,不能基于字典序,字母数字符号

passwd -l 用户名 锁定用户登录 /etc/shadow中加密密码!!

passwd -u 用户名 解锁用户登录 /etc/shadow中加密密码去掉!!

注意:在添加用户后,必须为用户添加密码,否则该用户无法登陆

 

命令名称:userdel

使用:userdel 选项 用户名

选项 -r 删除用户的同时,删除用户的家目录

userdel -r test1

 

命令名称:usermod

使用:usermod 选项 用户名 针对已经创建存在的用户

选项:

-u 修改uid

-g 修改初始组

-G 修改附加组

-c 修改用户说明

-s 修改用户shell

 

注意:

1)创建的用户的默认创建信息可在/etc/default/useradd/etc/login.defs中查看,但有些是无效的

2)默认创建用户的家目录中的内容可以在/etc/skel中修改,skel为用户创建的模板

 

 

3.用户组的添加、删除、修改

 

组的添加

groupadd 组名

-g 指定gid

 

groupmod 选项 组名

-g 修改组id

-n 新组名

 

删除组

groupdel 组名

组中有初始用户,则该组不能删除,组中只有附加组,则可删除

 

向组中添加删除用户

gpasswd 选项 用户名 组名

-a 添加

-d 删除

gpasswd -a test 组名

gpasswd -d test 组名

 

 

 

注意:对于用户和用户组的添加、删除、修改可以不通过命令,直接修改配置文件进行操作。

例如:删除一个用户

删除/etc/passwd中的一条记录

删除/etc/shadow中的一条记录

删除/etc/group中的一条记录

删除/etc/gshadow中的一条记录

删除/home/用户

删除/etc/spool/mail/用户 该用户的邮箱目录

 

附加命令:

su 切换用户

su - 用户名

注意:-不可省略,省略-,切换用户的环境变量没有发生变化

su - 用户名 -c “command” 让该用户执行command命令,没有切换登录

 

id 用户名

查看该用户的id信息:uid gid

 

chage修改密码的状态

chage 选项 用户名

选项: -l 显示该用户的密码信息

其他选项修改密码状态,直接通过修改/etc/shadow直接修改更加方便

常用:chage -d 0 用户 普通用户一登陆提示修改密码,修改后密码的最后一次修改时间发生变化

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。