• 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文件的其他用户失去执行权限

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

  • 相关阅读:
    20230925 比赛总结
    Python 基础合集8:类的继承和多态
    Struts 类型转换之局部和全局配置
    MSQL系列(四) Mysql实战-索引分析Explain命令详解
    MQ系列7:消息通信,追求极致性能
    Qt的简单应用:翻金币游戏( 含源码 )
    工业互联与MQTT
    web安全应用-XSS跨站脚本初级
    蓝桥杯2023年第十四届省赛真题-买瓜--C语言题解
    DHTMLX Gantt 8.0.5 Crack -甘特图
  • 原文地址:https://blog.csdn.net/weixin_44491423/article/details/126437505