当前位置: 首页 > ops >正文

Linux中rw-rw-r--相关的访问权限讲解

下面就是关于 rw-rw-r-- 的知识图谱式讲解。


核心节点:rw-rw-r-- (文件权限表示法)

这是一个在 Linux/Unix 操作系统中,通过 ls -l 命令查看到的,用于描述文件或目录访问权限的10字符字符串。


分支一:字符串的解剖 (Anatomy of the String)

这10个字符可以分为四个部分,每个部分都有明确的含义。

[ 1 ] [ 2 3 4 ] [ 5 6 7 ] [ 8 9 10 ]
- rw- rw- r--

  • 第1部分:文件类型 (File Type)

    • -: 代表这是一个普通文件 (Regular File)
    • d: 代表这是一个目录 (Directory)
    • l: 代表这是一个符号链接 (Symbolic Link)
    • 其他还有 c (字符设备), b (块设备) 等。
  • 第2部分:文件所有者 (User/Owner) 的权限

    • 对应字符 2, 3, 4 -> r w -
    • 含义: 文件的所有者(通常是创建该文件的用户)拥有读 (read)写 (write) 的权限,但没有执行 (execute) 的权限。
  • 第3部分:所属组 (Group) 的权限

    • 对应字符 5, 6, 7 -> r w -
    • 含义: 与文件所有者同属一个组的其他用户,拥有读 (read)写 (write) 的权限,但没有执行 (execute) 的权限。
  • 第4部分:其他用户 (Others) 的权限

    • 对应字符 8, 9, 10 -> r - -
    • 含义: 既不是文件所有者,也不在所属组内的其他所有用户,只拥有读 (read) 的权限,没有写和执行的权限。

分支二:权限字符的含义 (Meaning of r, w, x)

r, w, x 这三个权限字符的意义,对于文件目录是不同的。这是最关键的知识点。

权限对文件的作用对目录的作用
r (Read)可以读取文件的内容。 (e.g., cat, more, less)可以列出目录中的文件和子目录列表。 (e.g., ls)
w (Write)可以修改文件的内容。 (e.g., vim, echo > file)可以在该目录中创建、删除、重命名文件或子目录
x (Execute)可以将该文件作为程序或脚本来执行可以进入 (cd) 该目录,并访问其中的文件(需配合 r 权限)。

重要提示: 对一个目录的 wx 权限通常需要一起理解。如果你只有一个目录的 w 权限而没有 x 权限,你甚至无法进入该目录去创建文件,这个 w 权限就几乎无用了。


分支三:数字表示法 (Octal Notation)

在实际操作中,我们更常用3个八进制数字来表示权限,这与 rwx 有一一对应的关系。

  • r (读) = 4
  • w (写) = 2
  • x (执行) = 1
  • - (无权限) = 0

将每一组(所有者、组、其他)的权限数字相加,就得到了最终的数字表示。

对于 rw-rw-r--:

  • 所有者: r + w + - => 4 + 2 + 0 = 6
  • 所属组: r + w + - => 4 + 2 + 0 = 6
  • 其他用户: r + - + - => 4 + 0 + 0 = 4

所以,rw-rw-r-- 的数字表示法就是 664


分支四:相关核心命令 (Core Commands)

  1. chmod (Change Mode)

    • 作用: 修改文件或目录的权限。
    • 用法 (数字模式): chmod 664 filename
    • 用法 (符号模式):
      • u (user), g (group), o (others), a (all)
      • + (增加权限), - (移除权限), = (设置权限)
      • 示例: chmod g-w filename (移除所属组的写权限)
      • 示例: chmod u+x filename (为所有者增加执行权限)
  2. chown (Change Owner)

    • 作用: 修改文件或目录的所有者和所属组。
    • 用法: chown new_owner:new_group filename
  3. umask (User Mask)

    • 作用: 控制新建文件和目录的默认权限。它是一个“掩码”,会从最大权限(文件666,目录777)中“减去”权限。

分支五:实际应用与安全含义

rw-rw-r-- (即 664) 是一种非常常见的权限配置,尤其适用于团队协作的场景。

  • 典型场景: 一个团队共享的项目文件或文档。

    • 所有者 (你): 可以读和写。
    • 团队成员 (组): 也可以读和写,方便共同编辑。
    • 系统其他用户 (其他人): 只能看,不能修改,保证了文件的安全性。
  • 安全警示:

    • 绝不能用于脚本或程序: 因为它没有 x (执行) 权限,所以这个文件无法运行。
    • 不适用于敏感文件: 因为它允许同组的任何人修改你的文件,如果组内成员管理不当,可能会导致文件被误删或被恶意篡改。对于私密文件,权限通常应设为 600 (rw-------)。
    • 不适用于Web服务器的根目录文件: 允许组用户写权限可能带来安全风险。

知识图谱总结

              ┌───────────────┐│ rw-rw-r-- (664) │└───────┬───────┘│┌─────────────┴─────────────┐│        解剖与含义         │└─────────────┬─────────────┘│┌─────────┬─────────┴─────────┬─────────┐│         │                   │         │文件类型   所有者 (rw-)        所属组 (rw-)   其他 (r--)(-)       (User/Owner)        (Group)     (Others)│┌─────────────┴─────────────┐│        相关概念与命令       │└─────────────┬─────────────┘│┌─────────┬─────────┴─────────┬─────────┐│         │                   │         │rwx含义    数字表示法 (4,2,1)    chmod命令    chown/umask
(文件vs目录)                      (修改权限)    (修改归属/默认)│┌─────────────┴─────────────┐│        实际应用与安全       │└─────────────┬─────────────┘│团队协作文件、非敏感文档(不能是脚本!)
http://www.xdnf.cn/news/15060.html

相关文章:

  • android TabLayout 标题栏切换 事件拦截
  • 达梦数据库不兼容 SQL_NO_CACHE 报错解决方案
  • 三、神经网络——网络优化方法
  • Ansible:强大的自动部署工具
  • 线上事故处理记录
  • STM32单片机_3
  • Linux驱动开发(platform 设备驱动)
  • RV1126平台(Buildroot Linux)+ SunplusIT SPCA2688 USB摄像头 RTSP推流全流程复盘与问题解决记录
  • 对象序列化与反序列化
  • 快速将照片从三星手机传输到电脑
  • 节点小宝:手机图片备份至电脑功能实测体验
  • linux系统---ISCSI存储服务
  • GitHub信息收集
  • Flutter跨平台开发全解析
  • 从Rust模块化探索到DLB 2.0实践|得物技术
  • Spring Boot 企业级动态权限全栈深度解决方案,设计思路,代码分析
  • 深度学习与图像处理案例 │ 基于深度学习的自动驾驶小车
  • 降低新品试错成本,助力可持续增长
  • ubuntu server远程连接
  • AT9850B北斗双频导航定位芯片简介
  • 9N70-ASEMI太阳能逆变器专用9N70
  • 搭建自动化工作流:探寻解放双手的有效方案(1)
  • 测试开发和后端开发到底怎么选?
  • Leetcode刷题营第十九题:对链表进行插入排序
  • (LeetCode 每日一题) 3440. 重新安排会议得到最多空余时间 II (贪心)
  • 智能体的记忆系统:短期记忆、长期记忆与知识图谱
  • EFK/ELK9.0.3 windows搭建
  • ASP.NET Core 8 轻松配置Serilog日志
  • STM32-定时器输入捕获
  • 通用游戏前端架构设计思考