• linux用户管理,用户权限命令详解


    一.用户管理

    Linux 同时可以支持多个用户,每个用户对自己的文件设备有特殊的权利,能够保证用户之间互不干扰,就像手机开了助手一样,同时登陆多个 qq 账号,当硬件配置非常高时,每个用户还可以同时执行多个任务,多个线程同时工作,提高效率,多用户是 Linux 优于其他操作系统的一大特点

    1. 添加用户 

    useradd lisi

     查看添加是否成功

    1. cat /home
    2. #如果home目录下存在lisi,说明添加用户成功了

    2. 设置密码

    passwd lisi

    3. 删除用户

    1. #-r:递归的删除目录下面文件以及子目录下文件
    2. #删除用户的时候用户组被删除
    3. userdel -r lisi

    4. 查看用户

    id user

    5. 把用户加入组

    1. #把用户 testuser 加入到 root 组,加入组后 testuser 获取到 user 组及 root 组所有权限
    2. gpasswd -a testuser root
    3. #移出组
    4. gpasswd -d testuser root

    二.用户权限 用户分类

    网站发布到 linux 服务器下面一般要设置权限,不然的话可能没法上传图片,或者没法写入文件

    1.用户权限

    1. drwxr-x---. 2 root root 6 11 月 11 2023 mnt
    2. #d 表示目录
    3. #rwx root 对 mnt 目录具有读、写和执行的权限
    4. #r-x root 组内其他用户对 mnt 目录具有读和执行权限
    5. #--- other 其他所有用户对 mnt 目录没有任何权限
    6. #. 表示 ACL 的属性
    7. #2 mnt 里面的目录数量
    8. #root 当前目录所属用户
    9. #root 当前目录所属组
    10. #6 文件文件大小(以字节为单位) 这个字段表示文件大小,如果是一个文件夹,则表示该文件夹的大小.请注意是文件夹本身的大小,而不是文件夹以及它下面的文件的总大小,很多人不能理解文件夹是一个特殊的文件的含义,这样的话理解文件夹大小的含义就比较困难了
    11. #11 月 文件创建月份
    12. #11 2018 文件创建时间
    13. #mnt 目录名称

    2.权限

    就是人对文件所拥有权限,权限就是是哪个 读、写、执行 

    r 读, w 写, x 执行

    3.用户群体 

    所有者 user u
    所属组 group g
    其他用户 other o
    所有用户 all a,u+g+o=a ( 表示所有人 )

     4.目录的rwx

    r 查看目录里面的文件,,用 数字4 表示
    w 在目录里创建或删除文件,用 数字2 表示
    x 切换进目录,用 数字1 表示

    5.文件的rwx 

    r 查看文件内容
    w 在文件里写内容
    x 执行该文件 ( 文件不是普通文件,是程序或脚本 )

    三.chmod 权限分配 

    + 增加权限, - 删除权限
    1. chmod u+x my.sh 给当前用户分配执行 my.sh 的权限
    2. chmod o+r,o+w file.txt 给其他用户分配对 file.txt 的读写权限
    3. chmod o+r,o+w,o+x mnt 给所有其他用户分配对 mnt 目录的进入、读取、写入权限
    4. chmod -R o+r,o+w,o+x mnt 修改目录下的所有文件的权限为可读、可修改、可执行
    5. chmod 755 file
    6. chmod -R 777 wwwroot/ 修改目录下的所有文件的权限为可读、可修改、可执行
    7. 755 表示-rwxr-xr-x

     

    1. #eg1:让其他人对 mnt 目录没有任何权限
    2. chmod o-r,o-w,o-x mnt
    3. #eg2:所有人对 test.sh 文件具有 x 的权限
    4. chmod a+x test.sh
    5. #eg3:让所有用户对 test.sh 都没有 x 权限
    6. chmod a-x test.sh
    7. #eg4:让所有用户对 mnt 以及 mnt 里面的所有文件和文件夹都有 w 权限
    8. chmod o-r,o-w,o-x root
    9. chmod -R a+w mnt/

    四.用户权限管理 ACL

    先举个例子引入ACL,方便理解:

            让 zhangsan opt 目录具有 rx 权限,让 lisi opt 目录具有 rwx 的权限
            -m 修改
    1. setfacl -m u:zhangsan:rx opt/
    2. setfacl -m u:lisi:rwx opt/

    1.查看opt拥有的acl权限

    getfacl opt

    2.设置optacl权限

    setfacl -m u:zhangsan:rwx opt

    3.删除optuser1拥有的acl权限

     
    1. #-x 删除权限
    2. setfacl -x u:zhangsan opt

    4.删除opt上所设置过的所有acl权限

    setfacl -b opt/

    五.用户权限管理 visudo 

    当用zhangsan这个用户执行useradd命令时,会发现权限不足,这是因为useradd命令在sbin目录下,而sbin目录下的命令只有root才能执行,那么怎样才能让zhangsan用户执行useradd这个命令呢?通过which命令可以查看对应的命令在哪里

    1.设置visudo

    直接在命令行下输入visudo,回车后弹出一个vi文本,然后光标于最后面一行,输入模式(i),输入命令

    1. %zhangsan localhost=/usr/sbin/useradd
    2. %zhangsan localhost=/usr/sbin/userdel

    这样zhangsan用户就拥有使用useradd,userdel的权限了

    2. 执行命令

    在执行命令前面加上sudo就可以了 

    1. sudo useradd wangwu
    2. sudo userdel wangwu

  • 相关阅读:
    Java设计模式(一)—设计模式概述
    Java教程:RedisTemplate如何存取数据并使用scan非阻塞删除
    java计算机毕业设计婚纱摄影网站(附源码、数据库)
    每日一练 | 网络工程师软考真题Day39
    abp(net core)+easyui+efcore实现仓储管理系统——供应商管理升级之下(六十四)
    github access token
    Apollo Planning2.0决策规划算法代码详细解析 (2): vscode gdb单步调试环境搭建
    把握性能测试重点,5步解决问题!
    【面试题】margin负值问题
    orcale 单表查询和多表联合查询
  • 原文地址:https://blog.csdn.net/zhoupenghui168/article/details/133780145