用户和组相关知识及相关命令

目录

  • 用户和组的关系及类型
  • 用户和组的相关文件详解
  • 用户、组操作
  • 用户和组账户查询

1、用户和组相关关系及类型
每个用户有一个唯一的UID,每个组也有一个唯一的GID,多个用户可以属于同一个组
关系图如下:
在这里插入图片描述
2、相关文件
》和用户相关:
/etc/passwd:用于保存用户账号基本信息
每一行对应一个用户的账号记录,(UID=0为管理员用户)

[root@rhel1 ~]# head -3 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

总共7个字段:
字段1:用户账号名称
字段2:密码占位符“x” !!用户创建并没有设置密码。锁定
字段3:用户账号的UID号
字段4:所属基本组账号 的GID号
字段5:用户全名
字段6:宿主目录
字段7:登录shell信息
/etc/shadow文件:用于保存密码字串、密码有效期等信息。
每一行对应一个用户的密码记录。

[root@rhel1 ~]# head -3 /etc/shadow
root:$6$HGPCWqya5SfzVloS$AmzxFXKDv3IvaqcMP0wSsA7.xCA6B0EmakPab5tYqfvOKWjqU4cX1gWWbZdBk.VQoHNWvZTTDssrM89dE1Yme/:17948:0:99999:7:::
bin:*:15937:0:99999:7:::
daemon:*:15937:0:99999:7:::

总共9个字段:
字段1:用户帐号的名称
字段2:加密的密码字串信息
字段3:上次修改密码的时间
字段4:密码的最短有效天数,默认值为0
字段5:密码的最长有效天数,默认值为99999
字段6:提前多少天警告用户口令将过期,默认值为7
字段7:在密码过期之后多少天禁用此用户
字段8:帐号失效时间,默认值为空 注:99999表示永久有效
字段9:保留字段(未使用)
》和组有关
/etc/group :
组帐号:
主要组(私有组)
次要组(附属组)
GID: (Group Identify,组标识号)
在这里插入图片描述
注:
Linux组帐号
主要组(私有组)
与用户相关的默认组,在/etc/passwd文件的第四个字段定义
次要组(附属组)
用户可以同时属于其他的组,在/etc/group文件的第四个字段定义
用户的主要组的名称和GID相关
/etc/gshadow文件:保存组账号的密码信息
这个文件极少用,知道有这个文件即可。
3、用户、组操作
useradd命令:
格式:useradd 【选项】… 用户名
常用命令选项:
-u:指定 UID 标记号
-d:指定宿主目录,缺省为 /home/用户名
-e:指定帐号失效时间
-g:指定用户的基本组名(或GID号)
-G:指定用户的附加组名(或GID号)
-M:不为用户建立并初始化宿主目录
-s:指定用户的登录Shell
useradd在后台做的工作:
在这里插入图片描述
passwd命令:
格式:passwd 【选项】… 用户名
常用命令选项
-d:清空用户的密码,使之无需密码即可登录
-l:锁定用户帐号
-S:查看用户帐号的状态(是否被锁定)
-u:解锁用户帐号
–stdin:接收标准输入作为密码
root用户可以修改所有用户密码,不要求复杂性
普通用户只能改自己的密码,要求复杂性
userdel命令:
格式:userdel [-r] 用户名
添加 -r 选项时,表示连用户的宿主目录一并删除
在这里插入图片描述
usermod命令:
格式:usermod [选项]… 用户名
常用命令选项
-l:更改用户帐号的登录名称
-L:锁定用户账户
-U:解锁用户账户
以下选项与useradd命令中的含义相同
-u、-d、-e、-g、-G、-s
chage命令:
格式:chage [选项]… 用户名
常用命令选项
-l:列出密码时效的具体信息

[root@rhel1 ~]# chage -l u1
Last password change					: Mar 04, 2019
Password expires					: never
Password inactive					: never
Account expires						: never
Minimum number of days between password change		: 0
Maximum number of days between password change		: 99999
Number of days of warning before password expires	: 7

groupadd、groupdel命令:
格式:
groupadd [-g GID] 组帐号名
groupdel 组帐号名

[root@rhel1 ~]# groupadd -g 1000 market      #添加组ID 为1000的组账号market
[root@rhel1 ~]# tail -1 /etc/group
market:x:1000:
[root@rhel1 ~]# groupdel market              #删除组账号 market
[root@rhel1 ~]# grep "market" /etc/group
[root@rhel1 ~]# 

groupmod命令:
用途:设置组名和组id
格式:groupmod [选项]… 组帐号名
常用命令选项
-n:修改组名
-g:修改组id
gpasswd命令:
用途:设置组账号密码(极少用)、添加或删除组成员
格式: gpasswd 【选项】… 组账号名
常用命令选项:
-a:向组内添加一个用户
-d:从组内删除一个用户成员
-M:定义组成员列表,以逗号分隔

在这里插入图片描述
在这里插入图片描述
4、用户和组账号的查询
id命令
用途:查询用户身份标识
格式:id [用户名]

[root@rhel1 ~]# id u1
uid=500(u1) gid=500(u1) groups=500(u1)

finger命令
用途:查询用户帐号的详细信息
格式:finger [用户名]

chfn命令
用途:修改用户的备注信息,/etc/passwd第5字段
who、w、users命令
用途:查询已登录到主机的用户信息

[root@rhel1 ~]# w
 23:14:33 up  7:17,  2 users,  load average: 0.05, 0.03, 0.05
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    172.16.2.4       15:58    0.00s  0.57s  0.06s w
root     pts/1    172.16.2.4       17:23    3:08m  0.04s  0.04s -bash
[root@rhel1 ~]# who
root     pts/0        2019-03-22 15:58 (172.16.2.4)
root     pts/1        2019-03-22 17:23 (172.16.2.4)
[root@rhel1 ~]# users
root root

groups命令
用途:查询用户所属的组

[root@rhel1 ~]# groups u1
u1 : u1

猜你喜欢

转载自blog.csdn.net/qq_42935487/article/details/88742471