Linux用户管理

基本介绍

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

基本操作及语法

  1. 添加用户
    useradd 用户名(默认该用户的家目录在/home/用户名)

[root@fyx01 ~]# cd /home
[root@fyx01 home]# ls
tony
[root@fyx01 home]# useradd milan
[root@fyx01 home]# ls
milan  tony  

1)当创建用户成功后,会自动创建和用户同名的家目录

2)也可以通过[useradd -d 指定目录 新的用户名] ,给新创建的用户指定家目录。

[root@fyx01 home]# useradd -d /home/test king
[root@fyx01 home]# ls
milan  test  tony  
  1. 指定/修改密码
    passwd 用户名

[root@fyx01 home]# passwd milan
更改用户 milan 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。  

1)显示当前用户所在的目录 pwd

[milan@fyx01 ~]$ pwd
/home/milan  
  1. 删除用户
    userdel 用户名

1)删除用户,但保留家目录

[root@fyx01 ~]# cd /home/
[root@fyx01 home]# ls
milan  test  tony
[root@fyx01 home]# userdel milan
[root@fyx01 home]# ls
milan  test  tony

2)删除用户以及用户主目录(一般不这么做)

[root@fyx01 home]# userdel -r tony
[root@fyx01 home]# ls
milan  test
  1. 查询用户信息
    id 用户名

[root@fyx01 home]# id root
uid=0(root) gid=0(root) 组=0(root)
[root@fyx01 home]# id king
uid=1002(king) gid=1002(king) 组=1002(king)
[root@fyx01 home]# id milan
id: milan: no such user
  1. 切换用户
    su - 切换用户名

[root@fyx01 home]# su - jack
[jack@fyx01 ~]$ su - root
密码:
上一次登录:日 1月  1 13:32:17 CST 2023从 192.168.96.1pts/0 上
[root@fyx01 ~]# logout
[jack@fyx01 ~]$ exit
登出

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

  1. 查看当前用户/登录用户

    whoami/ who am I

[root@fyx01 ~]# who am I
root     pts/0        2023-01-01 13:32 (192.168.xxx.x)
[root@fyx01 ~]# whoami
root
[root@fyx01 ~]# su jack
[jack@fyx01 root]$ who am I
root     pts/0        2023-01-01 13:32 (192.168.xxx.x)  
[jack@fyx01 root]$ whoami
jack

1)whoami显示的是当前操作的用户名,who am I显示的是第一次登陆的用户名。

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

新增组

groupadd 组名

[root@fyx01 ~]# groupadd wudang

删除组
groupdel 组名

[root@fyx01 ~]# groupdel wudang

增加用户时直接上组

useradd -g 用户组 用户名

[root@fyx01 ~]# groupadd wudang
[root@fyx01 ~]# useradd -g wudang zhangwuji
[root@fyx01 ~]# id zhangwuji
uid=1004(zhangwuji) gid=1004(wudang) 组=1004(wudang)

修改用户的组
usermod -g 用户组 用户名

[root@fyx01 ~]# groupadd mojiao
[root@fyx01 ~]# usermod -g mojiao zhangwuji
[root@fyx01 ~]# id zhangwuji
uid=1004(zhangwuji) gid=1005(mojiao) 组=1005(mojiao)

用户和组相关文件

  1. /etc/passwd 文件
    用户(user)的配置文件,记录用户的各种信息。

    每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
    Shell是cd命令与Linux内核之间的命令解析器。

zhangwuji:x:1004:1005::/home/zhangwuji:/bin/bash
  1. /etc/shadow 文件
    口令的配置文件
    每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

zhangwuji:!!:19358:0:99999:7:::

未设置密码因此加密口令处为'!'

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

wudang:x:1004:
mojiao:x:1005:

本文章使用limfx的vscode插件快速发布