8.1基本介绍

Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统
image.png

8.2添加用户

解读:

useradd 用户名 指令添加一个用户会自动在home目录下生成对应用户的文件。
useradd -d /home/目录名 用户名 指令添加一个用户会在对应的home目录下生成对应的用户文件。
以上方式生成的用户会有对应的用户组,且没有密码。

  1. [root@wqh01 ~]# useradd wqh
  2. [root@wqh01 ~]# cd /home
  3. [root@wqh01 home]# ls
  4. tom wqh
  5. [root@wqh01 home]#
  6. [root@wqh01 ~]# useradd -d /home/test king
  7. [root@wqh01 ~]# cd /home
  8. [root@wqh01 home]# ls
  9. test tom wqh

8.2.1基本语法

useradd 用户名

8.2.2应用案例案例

1:添加一个用户milan,默认该用户的家目录在/home/milan

8.2.3细节说明

1)当创建用户成功后,会自动的创建和用户同名的家目录
2)也可以通过useradd-d指定目录新的用户名,给新创建的用户指定家目录

8.3指定/修改密码

解读:

passwd 用户名 指令修改对应的用户名密码。
passwd 指令后面没有指定用户名默认修改当前用户密码,建议在高权限下修改其他用户密码。
logout 指令注销当前用户,后面详细说明
pwd 指令查看当前用户名所在目录文件

  1. [root@wqh01 home]# passwd wqh
  2. 更改用户 wqh 的密码
  3. 新的 密码:
  4. 无效的密码: 密码少于 8 个字符
  5. 重新输入新的 密码:
  6. passwd:所有的身份验证令牌已经成功更新。
  7. [root@wqh01 home]# logout
  8. Connection closing...Socket close.
  9. Connection closed by foreign host.
  10. Disconnected from remote host(192.168.153.129) at 10:29:12.
  11. Type `help' to learn how to use Xshell prompt.
  12. [C:\~]$
  13. Connecting to 192.168.153.129:22...
  14. Connection established.
  15. To escape to local shell, press 'Ctrl+Alt+]'.
  16. /usr/bin/xauth: file /home/wqh/.Xauthority does not exist
  17. [wqh@wqh01 ~]$ pwd
  18. /home/wqh

8.3.1基本语法

passwd 用户名

8.3.2应用案例

给milan指定密码passwdmilan补充,显示当前用户所在的目录pwd

8.4删除用户

解读:

userdel 用户名 指令自己不能删除自己。在高的权限下删除用户,但保留用户在home目录下的文件。
userdel -r 用户名 指令删除用户名及其home目录下对应的用户名的文件。注意:此操作会有风险,一定要慎用!

  1. [wqh@wqh01 ~]$ userdel wqh
  2. userdel: user wqh is currently used by process 2895
  3. [wqh@wqh01 ~]$ logout
  4. Connection closing...Socket close.
  5. Connection closed by foreign host.
  6. Disconnected from remote host(192.168.153.129) at 10:37:21.
  7. [root@wqh01 ~]# userdel wqh
  8. [root@wqh01 ~]# cd /home
  9. [root@wqh01 home]# ls
  10. test tom wqh
  11. [root@wqh01 home]# logout
  12. Connection closing...Socket close.
  13. Connection closed by foreign host.
  14. Disconnected from remote host(192.168.153.129) at 10:39:47.

可以看到wqh用户已被删除,且无法登录了。
image.png

  1. [root@wqh01 ~]# userdel -r tom
  2. [root@wqh01 ~]# cd /home
  3. [root@wqh01 home]# ls
  4. test wqh
  5. [root@wqh01 home]#

8.4.1基本语法

userdel用户名

8.4.2应用案例

1)删除用户milan,但是要保留家目录,userdelmilan
2)删除用户以及用户主目录,比如tom,userdel-rtom

8.4.3细节说明

是否保留家目录的讨论?一般情况下,我们建议保留

8.5查询用户信息指令

解读:

id 用户名 指令可以查看这个用户的信息
su - 用户名 指令可以切换其他用户,高权限换低权限用户无需密码,低权限换高权限需要输入登录密码
logout/exit 指令注销当前用户,如果su指令切换过用户会回到原来的用户
who am i 指令可以查看当前用户是谁。如果切换了其他用户但他还是会显示第一次登录的用户名。

[root@wqh01 home]# id root
uid=0(root) gid=0(root) 组=0(root)
[root@wqh01 home]# id king
uid=1002(king) gid=1002(king) 组=1002(king)
[root@wqh01 home]# useradd jack
[root@wqh01 home]# passwd jack
更改用户 jack 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@wqh01 home]# su - jack
[jack@wqh01 ~]$ su - root
密码:
上一次登录:六 11月 20 10:41:17 CST 2021从 192.168.153.1pts/0 上
[root@wqh01 ~]# logout
[jack@wqh01 ~]$ exit
登出
[root@wqh01 home]# logout
Connection closing...Socket close.

Connection closed by foreign host.

Disconnected from remote host(192.168.153.129) at 10:50:07.

Type `help' to learn how to use Xshell prompt.

[root@wqh01 ~]# who am i
root     pts/0        2021-11-20 10:53 (192.168.153.1)
[root@wqh01 ~]# su - jack
上一次登录:六 11月 20 10:49:00 CST 2021pts/0 上
[jack@wqh01 ~]$ who am i
root     pts/0        2021-11-20 10:53 (192.168.153.1)

8.5.1基本语法

id用户名

8.5.2应用实例

案例:请查询root信息#idroot

8.5.3细节说明

当用户不存在时,返回无此用户

8.6切换用户

8.6.1介绍

在操作Linux中,如果当前用户的权限不够,可以通过su-指令,切换到高权限用户,比如root

8.6.2基本语法

su-切换用户名

8.6.3应用实例

创建一个用户jack,,指定密码,然后切换到jack

8.6.4细节说明

1)从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。
2)当需要返回到原来用户时,使用exit/logout指令

8.7查看当前用户/登录用户

8.7.1基本语法

who am i/who am I

8.8用户组

解读:

groupadd 组名 指令新建一个组
groupdel 组名 指令删除一个组
useradd -g 组名 用户名 指令新增一个用户在对应的组
usermod-g 组名 用户名 指令修改一个用户在对应的组

[root@wqh01 ~]# groupadd wudang
[root@wqh01 ~]# groupdel wudang
[root@wqh01 ~]# groupadd wudang
[root@wqh01 ~]# useradd -g wudang zwj
[root@wqh01 ~]# id zwj
uid=1004(zwj) gid=1004(wudang) 组=1004(wudang)
[root@wqh01 ~]# groupadd mojiao
[root@wqh01 ~]# usermod -g mojiao zwj
[root@wqh01 ~]# id zwj
uid=1004(zwj) gid=1005(mojiao) 组=1005(mojiao)

8.8.1介绍

类似于角色,系统可以对有共性/权限的多个用户进行统一的管理
image.png

8.8.2新增组

指令:groupadd组名案例演示

8.8.3删除组

指令(基本语法):groupdel组名

8.8.4案例演示

1)增加用户时直接加上组
2)指令(基本语法):useradd–g用户组用户名
3)增加一个用户zwj,直接将他指定到wudang
4)groupaddwudang
5)useradd-gwudangzwj

8.8.5修改用户的组

指令(基本语法):usermod–g用户组用户名案例演示创建一个组mojiao把zwj放入到mojiao指令:usermod-gmojiaozwj

8.9用户和组相关文件

8.9.1/etc/passwd文件

用户(user)的配置文件,记录用户的各种信息每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
image.png

8.9.2/etc/shadow

文件口令的配置文件每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

8.9.3/etc/group

文件组(group)的配置文件,记录Linux包含的组的信息每行含义:组名:口令:组标识号:组内用户列表