• Linux-用户管理


    Linux-用户管理

    1.基本介绍

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

    image-20220827101835031

    2.添加用户

    1.基本语法

    useradd 用户名

    [root@llp home]# useradd jack
    正在创建信箱文件: 文件已存在
    [root@llp home]# ls
    jack  llp
    #给新创建的用户指定家目录
    [root@llp home]# useradd -d /home/test king 
    [root@llp home]# ls
    jack  llp  test
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    2.应用实例

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

    [root@llp home]# useradd milan
    [root@llp home]# ls
    jack  llp  milan  test
    
    • 1
    • 2
    • 3

    3.细节说明

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

    3.指定/修改密码

    1.基本语法

    passwd 用户名

    2.应用实例

    给 milan 指定密码 passwd 123

    [root@llp home]# passwd milan
    更改用户 milan 的密码 。
    #这里我输入的123 会提示密码少于8个字符但是不影响使用
    新的 密码:
    无效的密码: 密码少于 8 个字符
    重新输入新的 密码:
    passwd:所有的身份验证令牌已经成功更新。
    [root@llp home]# 
    #当前登录用户切换到milan
    [root@llp home]# su - milan
    #显示当前用户所在的目录 pwd
    [milan@llp ~]$ pwd
    /home/milan
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    4.删除用户

    1.基本语法

    1.删除用户保留家目录

    userdel 用户名

    2.删除用户以及用户主目录

    userdel -r 用户名

    2.应用实例

    1. 删除用户 milan,但是要保留家目录, userdel milan

      #sbin必须是超级管理员账户才能删除,milan只是一个普通权限用户
      [milan@llp ~]$ userdel milan
      -bash: /usr/sbin/userdel: 权限不够
      
      #用户root账户登录
      [root@llp ~]# cd /home/
      [root@llp home]# ls
      jack  llp  milan  test
      #userdel milan删除账户保留家目录
      [root@llp home]# userdel milan
      [root@llp home]# ls
      jack  llp  milan  test
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
    2. 删除用户以及用户主目录, 比如 jack, userdel -r jack

    jack  llp  milan  test
    [root@llp home]# userdel -r jack
    [root@llp home]# ls
    llp  milan  test
    [root@llp home]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5

    5.查询用户信息指令

    1.基本语法

    id 用户名

    2.应用实例

    案例:查询 llp 信息

    #查询 llp 信息
    [root@llp home]# id llp
    uid=1000(llp) gid=1000(llp)=1000(llp)
    #查询 root 信息
    [root@llp home]# id root
    uid=0(root) gid=0(root)=0(root)
    #不存在的用户
    [root@llp home]# id milan
    id: milan: no such user
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    3.细节说明

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

    6.切换用户

    1.介绍

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

    2.基本语法

    su - 切换用户名

    3.应用实例

    #从root(高权限用户)切换到llp(低权限用户)可以直接切换
    [root@llp ~]# su - llp
    上一次登录:六 827 17:13:49 CST 2022pts/0 上
    #从低权限用户切换到高权限用户需要输入高权限用户的登录密码
    [llp@llp ~]$ su - root
    密码:
    上一次登录:六 827 17:14:25 CST 2022pts/0 上
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    4.细节说明

    1. 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。

    2. 当需要返回到原来用户时,使用 exit/logout 指令

    [llp@llp ~]$ logout
    [root@llp ~]# pwd
    /root
    
    • 1
    • 2
    • 3

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

    1.基本语法

    whoami/ who am I

    [root@llp ~]# who am i
    root     pts/0        2022-08-27 17:06 (192.168.79.1)
    [root@llp ~]# whoami
    root
    #切换到llp账户
    [root@llp ~]# su - llp
    上一次登录:六 827 17:14:30 CST 2022pts/0 上
    #可who am i 还是显示root账号登录信息
    [llp@llp ~]$ who am i
    root     pts/0        2022-08-27 17:06 (192.168.79.1)
    #whoami则显示当前登录账户名
    [llp@llp ~]$ whoami
    llp
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    8.用户组

    1.说明

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

    2.新增组

    指令 : groupadd 组名

    groupadd wudang
    
    • 1

    3.删除组

    指令: groupdel 组名

    groupdel wudang
    
    • 1

    4.案例演示

    1. 增加用户时直接加上组

    2. 指令(基本语法) : useradd –g 用户组 用户名

    1. 增加一个用户 zwj, 直接将他指定到 wudang

      groupadd wudang
      
      useradd -g wudang zwj
      
      • 1
      • 2
      • 3

    5.修改用户的组

    指令(基本语法):usermod –g 用户组 用户名

    案例演示

    创建一个组 mojiao

    把 zwj 放入到 mojiao

    指令: usermod -g mojiao zwj

    #创建一个组 mojiao
    groupadd mojiao
    # 把 zwj	放入到 mojiao
    usermod -g mojiao zwj
    
    • 1
    • 2
    • 3
    • 4

    9.用户和组相关文件

    1./etc/passwd 文件

    用户(user)的配置文件,记录用户的各种信息

    每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录 Shell

    image-20220827102558445

    vim /etc/passwd
    #用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录 Shell
    llp:x:1000:1000:llp:/home/llp:/bin/bash
    king:x:1002:1002::/home/test:/bin/bash
    zuj:x:1003:1004::/home/zuj:/bin/bash
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2./etc/shadow 文件

    口令的配置文件

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

    vim /etc/passwd
    
    #登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
    llp:$6$hZJn8kLk8S1pmQFf$a0GOHzEtRnqr3Vm364wSq68jwWjpUanzw1312.hp5wkIaHzeWfoOR1k75waTe8p4I797so.JIctGZKd8wL8Go.::0:99999:7:::
    #这里zuj和king没有设置密码所以没有加密口令
    king:!!:19231:0:99999:7:::
    zuj:!!:19231:0:99999:7:::                         
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    3./etc/group 文件

    组(group)的配置文件,记录 Linux 包含的组的信息

    每行含义:组名:口令:组标识号:组内用户列表

    #如果创建用户时没有分配组,则默认会创建和用户名相同的组
    llp:x:1000:llp
    king:x:1002:
    wudang:x:1003:
    mojiao:x:1004:
    
    • 1
    • 2
    • 3
    • 4
    • 5
  • 相关阅读:
    深入理解RunLoop
    Excel自学三部曲_Part3:Excel工作场景实战(二)
    AtCoder ABC 138
    Android 系统开发人员的权限说明文档
    Mac虚拟机Parallels Desktop和VirtualBox哪个更适合?
    DGA行为转变引发了对网络安全的担忧
    [附源码]计算机毕业设计JAVAjsp生产型企业员工管理系统
    第二章 C API稳定性
    volatile关键字
    多个 .NET Core SDK 版本之间进行切换 global.json
  • 原文地址:https://blog.csdn.net/qq_44981526/article/details/126560952