• Linux学习笔记——文件权限的修改


    Linux chmod (英文全拼:change mode) 命令是控制用户对文件的权限的命令。

    Linux/Unix 的文件调用权限分为三级 : 文件所有者(Owner)、用户组(Group)、其它用户(Other Users)。


    在学习文件权限修改之前先补充两个知识点:

    1. 我们可以使用 whoami 命令查看当前登录用户:
    2. 可以使用 ls -l 命令查看文件的权限:

    文件权限的修改主要使用 chmod 命令,并且分为文字设定法与数字设定法。


    文字设定法

    其语法规则如下:

    chmod [who][+|-|=][mode]
    
    • 1

    这里的 who 有四个选项:

    • 文件所有者:u
    • 文件所属组:g
    • 其他人:o
    • 所有人:a

    这里的 +|-|= 为如下的含义:

    • +:添加权限
    • -:减少权限
    • =:覆盖原来的权限

    这里的 mode 有如下的含义:

    • r:读
    • w:写
    • x:执行

    下面以几个例子进行说明:

    1. 给hello.c的其他人增加写权限

    2.让所有人对hello.c只有读权限


    数字设定法

    chmod命令可以使用八进制数来指定权限。文件或目录的权限位是由9个权限位来控制,每三位为一组,它们分别是文件所有者(User)的读、写、执行,用户组(Group)的读、写、执行以及其它用户(Other)的读、写、执行。历史上,文件权限被放在一个比特掩码中,掩码中指定的比特位设为1,用来说明一个类具有相应的优先级。


    例如, 765 将这样解释:

    • 所有者的权限用数字表达:属主的那三个权限位的数字加起来的总和。如 rwx ,也就是 4+2+1 ,应该是 7。
    • 用户组的权限用数字表达:属组的那个权限位数字的相加的总和。如 rw- ,也就是 4+2+0 ,应该是 6。
    • 其它用户的权限数字表达:其它用户权限位的数字相加的总和。如 r-x ,也就是 4+0+1 ,应该是 5。

    下面以几个例子进行说明:

    让hello.c文件的所有者拥有所有权限,用户组以及其他用户只有读和执行文件

    让hello.c文件的其他用户失去执行权限

    这里需要注意的是目录需要有执行权限,如果没有执行权限则无法进入目录。

  • 相关阅读:
    机器视觉工程师们,常回家看看
    设计模式 之单例模式
    NeurIPS 2023 | AD-PT:首个大规模点云自动驾驶预训练方案
    Spring Cloud根据服务名获取服务的ip端口
    Git 常用命令
    Android studio报错help
    dubbo 用户指南
    GFS 分布式文件系统
    MySQL:基础架构与存储引擎
    codeforces 1239D-Catowice City(tarjan缩点)
  • 原文地址:https://blog.csdn.net/weixin_44491423/article/details/126437505