用户 账号管理
用户账号文件/etc/passwd
用途:
保存用户名称、宿主目录、登录shell等基本信息
文件位置:
/etc/passwd
每行说明:
每一行对应一个用户的账号记录
-
root,用户名。
-
x,密码占位符,为保障用户密码的安全性,密码实际存放在/etc/shadow文件中。
-
0,用户编号UID。
-
0,用户基本组编号GID。
-
root,用户描述说明。
-
/root,用户家目录。
-
/bin/bash,用户的登录shell。
用户口令文件/etc/shadow
用途:
保存用户的密码、账号有限期等信息
文件位置:
/etc/shadow
每行说明:
每一行对应一个用户的密码记录
/etc/shadow文件也是以冒号(:)作为分隔符,将每行分成了9段,每个字段的含义如下:
第一字段:用户名
第二字段:加密后的密码 如果为 * !!无法登录
第三字段:上一次修改密码时间,数字的含义为 从1970-1-1 到改密码的时间 一共经历多少天
第四字段:最小修改密码间隔时间 如果是0 可以随意修改,7代表7 天后才可以修改
第五字段: 密码有效期 默认99999天 273年,设置为 7 代表7天要求你重新设置密码
第六字段:密码到期提醒时间 设置为7 代表密码到期前7天会提示你
第七字段:密码过期后的宽限天数 设置为10 表示密码到期后还可以使用10天
第八字段:用户失效时间 同第 3 个字段一样,使用自 1970 年 1 月 1 日以来的总天数作为账户的失效时间到期后无法登录
第九字段:保留字段
useradd 添加用户
通式:
useradd [选项] 用户名
选项:
-u 指定uid
-g 指定基本组(组名和gid都可以)
-G 指定附加组(组名和gid都可以)
-d 指定家目录
-M 不建立家目录
-s 指定默认登录shell
-e 指定用户失效时间
当建立用户时 不加选项
1. 会按顺序使用uid号
2. 会建立一个和用户名同名的基本组
3. 按顺序使用gid
4. 会在/home建立一个和用户名同名的家目录
5. 会将用户信息保存在/etc/passwd 文件中
passwd 修改密码
命令格式:
passwd 用户名 改密码 交互
passwd [选项] 用户名
选项:
-l 锁定用户 不让登录
-u 解锁
-d 清空密码
-S 查看锁定状态
usermod 修改已有用户的属性
通式:
usermod [选项] 用户名
选项:
-l(小写) 修改用户登录名
-L(大写) 锁定用户
-U(大写) 解锁用户
以下选项与useradd命令中的含义相同
-u 指定uid
-g 指定基本组
-G 指定附加组
-d 指定家目录
-M 不建立家目录
-s 指定默认登录shel
-e 指定用户失效时间
删除用户userdel
通式:
userdel [选项] 用户
选项:
-r 连家目录一起删除
用户账号初始配置文件
文件来源:新建用户账号时,从/etc/skel 目录中复制而来
主要的用户初始配置文件:
~/.bash_profile
~/.bashrc
~/.bash_lohout
组管理
组账号文件
1.文件位置:
/etc/group:保存组账号基本信息。
/etc/gshadow:保存组账号的密码信息。
2./etc/group文件内容:
[root@localhost ~]# head -3 /etc/group //查看group文件前三行
root:x:0:
bin:x:1:
daemon:x:2:
group文件每行分成了4段,每个字段含义如下:
字段1:组账号名称。
字段2:密码占位符x;通常不需要设置组密码。由于安全原因,该密码被记录在/etc/gshadow中,因此显示为'x'。类似/etc/shadow文件。
字段3:组编号GID。
字段4:本组的成员用户列表 (一般不包括基本组对应的用户帐号),多个成员之间以逗号“,"分隔
添加组账号groupadd
命令格式:
groupadd [-g GID] 组账号名
示例:
添加删除组成员 gpasswd
通式:
gpasswd [选项] 组账号名
选项:
-a 向组内添加一个用户
-d 从组内删除一个用户成员
-M 定义组成员列表
删除组账号 groupdel
命令格式:
groupdel 组账号
Linux系统中超级管理员组
查询账号信息
查询用户所属的组 groups
groups 命令
查询用户所属的组
通式:groups [用户名]
查询用户身份标识 id
id 命令
查询用户身份标识
id [用户名]
查询用户账号的详细信息 finger
注意:如没有安装finger,需要安装后才能使用
命令格式:
finger [用户名]
查询已登录到主机的用户信息
W、who、users 命令
[root@localhost ~]# w //显示当前登录系统的用户信息以及他们的进程 23:27:59 up 8:12, 2 users, load average: 0.11, 0.08, 0.06 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/2 192.168.72.1 22:09 7.00s 0.08s 0.08s -bash root pts/3 192.168.72.1 22:09 1:18m 5.29s 5.27s top
[root@localhost ~]# who //显示当前登录系统的用户信息 root pts/2 2022-02-21 22:09 (192.168.72.1) root pts/3 2022-02-21 22:09 (192.168.72.1)
[root@localhost ~]# users //查询最近三次登录的用户信息 root root root