• 权限 chmod


    参考:

    Linux chmod 命令 | 菜鸟教程 (runoob.com)

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

    Linux/Unix 的文件调用权限分为三级 :

    • 文件所有者(Owner Users)
    • 用户组(Group)
    • 其它用户(Other Users)
    先使用  ls -l  查看所有文件信息
    ls -l  #长格式(long format)列出当前目录下的文件和目录的详细信息
    1. #以下为 ls -l 显示的内容
    2. drwxr-xr-x 4 root root 4096 210 2021 speech-dispatcher
    3. drwxr-xr-x 4 root root 4096 612 10:53 ssh
    4. drwxr-xr-x 4 root root 4096 612 10:59 ssl
    5. -rw-r--r-- 1 root root 20 14 2022 subgid
    6. -rw-r--r-- 1 root root 0 210 2021 subgid-
    7. -rw-r--r-- 1 root root 20 14 2022 subuid
    8. -rw-r--r-- 1 root root 0 210 2021 subuid-
    9. -r--r----- 1 root root 755 23 2020 sudoers
    10. drwxr-xr-x 2 root root 4096 1110 2023 sudoers.d
    11. -rw-r--r-- 1 root root 2351 214 2020 sysctl.conf
    12. drwxr-xr-x 2 root root 4096 612 11:16 sysctl.d
    13. drwxr-xr-x 5 root root 4096 316 2023 systemd
    14. drwxr-xr-x 2 root root 4096 1110 2023 terminfo
    15. drwxr-xr-x 2 root root 4096 14 2022 thermald
    1. 权限:前10个字符表示权限。

      • 第一位表示文件类型:d 表示目录,- 表示普通文件,l 表示软链接(符号链接),还有其他特殊类型但这里未展示。
      • 接下来的9个字符分为3组,每组3个字符,分别表示所有者(Owner)、所属组(Group)、其他人(Others)的权限。
        • r (Read, 读):允许读取文件内容或列出目录内容。
        • w (Write, 写):允许修改文件内容或在目录中创建/删除文件。
        • x (Execute, 执行):允许执行文件(如果是脚本或程序)或进入目录。
        • - 表示相应权限被禁止。
    2. 硬链接数:接下来的数字表示该文件的硬链接数量。对于目录,这通常是其直接子项(文件和目录)的数量。

    3. 所有者:文件或目录的所有者的用户名。

    4. 所属组:文件或目录所属的用户组名。

    5. 文件大小:以字节为单位表示的文件大小,或对于目录而言,并非严格意义上目录本身的大小,而是目录条目的计数单位。

    6. 最后修改日期和时间:文件或目录最后一次被修改的时间。

    7. 文件名:文件或目录的名称。

    一、八进制数字表示法

    1.1 对于文件

     数字含义:Read   Write    Executive    1表示有权限,0表示无权限,八进制计数

    • 第一位:User  
    • 第二位:Group
    • 第三位:Other
    chmod 777 myfile.txt

    1.2 对于目录

    语法:chmod   [option]   [num]   my_directory     

    option:

    • -c : 若该文件权限确实已经更改,才显示其更改动作
    • -f : 若该文件权限无法被更改也不要显示错误讯息
    • -v : 显示权限变更的详细资料
    • -R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递归的方式逐个变更)
    • --help : 显示辅助说明
    • --version : 显示版本

    二、符号表示法

    who用户类型说明
    uuser文件所有者
    ggroup文件所有者所在组
    oothers所有其他用户
    aall所有用户, 相当于 ugo
    Operator说明
    +为指定的用户类型增加权限
    -去除指定用户类型的权限
    =设置指定用户权限的设置,即将用户类型的所有权限重新设置
    mode名字说明
    r设置为可读权限
    w设置为可写权限
    x执行权限设置为可执行权限
    X特殊执行权限只有当文件为目录文件,或者其他类型的用户有可执行权限时,才将文件权限设置可执行
    ssetuid/gid当文件被执行时,根据who参数指定的用户类型设置文件的setuid或者setgid权限
    t粘贴位设置粘贴位,只有超级用户可以设置该位,只有文件所有者u可以使用该位

    格式: chmod [who][operator][mode]   [file] 

    1. chmod u+w myfile.txt #给文件所有者增加写权限
    2. chmod u-x,g+r myfile.txt #从文件所有者移除执行权限,并给组用户添加读权限
    3. chmod a=rw myfile.txt #设置所有用户都有读写权限
    4. chmod +x myfile.txt #没有指定用户,默认给所有用户添加执行权限

  • 相关阅读:
    Notification通知框样式添加
    这个好玩又实用的jupyter插件我真的爱了
    mock
    JavaEE初阶--------第七章 HashMsp、HashTable 和 ConcurrentHashMap 之间的区别
    Java版分布式微服务云开发架构 Spring Cloud+Spring Boot+Mybatis 电子招标采购系统功能清单
    我的Windows10下的WSL的使用经历
    Golang学习日志 ━━ 部署Gin-Vue-Admin到windows系统并启用IIS服务,顺便学习如何设置IIS反向代理
    基于Java+SpringBoot+Vue+uniapp微信小程序外卖系统设计和实现
    kernel驱动配置文件的编写的记录
    Chrom谷歌浏览器f12打开开发者模式发现无法看到network的请求
  • 原文地址:https://blog.csdn.net/m0_52980547/article/details/139992778