news 2026/7/22 10:21:48

文件保护:存取控制矩阵 - **原理**:使用一个二维矩阵来描述系统中每个用户对每个文件的访问权限

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
文件保护:存取控制矩阵 - **原理**:使用一个二维矩阵来描述系统中每个用户对每个文件的访问权限

一、文件链接

  1. 硬链接(Hard Link)

    • 通过ln 源文件 新文件名命令创建。
    • 本质:多个文件名指向同一个索引节点(inode),共享文件数据块。
    • 特点:
      • 不支持跨文件系统(因为不同文件系统的 inode 编号可能重复)。
      • 删除一个硬链接不会影响其他链接,只有当所有链接都被删除时,文件数据才被真正释放。
      • 使用ls -l查看时,第二列数字表示该文件的硬链接数(即 inode 被引用的次数)。
  2. 符号链接(Symbolic Link / Soft Link)

    • 通过ln -s 源文件 新链接名创建。
    • 本质:创建一个特殊的“link 文件”,内容是目标文件的路径字符串。
    • 特点:
      • 可以跨文件系统,甚至指向网络上的远程文件(如 NFS)。
      • 链接数始终为 1(因为它是一个独立的文件)。
      • 访问效率较低,需先读取链接文件内容,再根据路径查找目标文件(多一次磁盘 I/O)。
      • 若原文件被删除或移动,符号链接会变成“悬空链接”(dangling link),访问时报错。

二、文件保护:存取控制矩阵

  • 原理:使用一个二维矩阵来描述系统中每个用户对每个文件的访问权限。

    • 行表示用户(主体),列表示文件(客体)。
    • 矩阵元素 A[i][j] 表示第 i 个用户对第 j 个文件的操作权限,如 R(读)、W(写)、X(执行)等。
  • 示例(表 4-5)

    用户文件权限
    张军ALPHARWX
    王伟BETARWX
    赵凌SQRTRWX
    李晓钢REPORTRWX
  • 优缺点分析

    • 优点:逻辑清晰,权限管理直观。
    • 缺点:稀疏矩阵导致空间浪费严重(大多数用户对大多数文件无权限),难以扩展到大型系统。
    • 实际应用中通常采用更高效的替代方案,如:
      • 访问控制列表(ACL):按文件维护权限列表。
      • 能力表(Capability List):按用户维护可访问文件及其权限。
      • 权限位(如 Unix 的 rwx):简化模型,分为 owner/group/others 三类用户。

补充说明:
这部分内容属于操作系统中的“文件管理”核心模块,尤其在 UNIX/Linux 系统中体现明显。理解硬链接与符号链接的区别有助于掌握文件系统的底层结构;而存取控制矩阵则是现代权限系统的设计基础,在软件设计师考试、系统安全设计等领域频繁考查。
硬链接和符号链接在 inode 上的区别如下:

  1. 硬链接(Hard Link)

    • 硬链接与原文件共享同一个 inode 编号
    • 实际上,硬链接只是给已有文件增加了一个新的目录项(文件名),所有硬链接都指向同一个物理 inode。
    • 文件的链接计数(link count)会随着硬链接的创建而增加(可通过ls -l第二列查看)。
    • 只有当所有硬链接都被删除、链接计数为 0 时,系统才会真正释放该文件的数据块和 inode。
  2. 符号链接(Symbolic Link / Soft Link)

    • 符号链接拥有自己独立的 inode,它是一个特殊类型的文件(link 类型)。
    • 其 inode 中记录的内容是目标文件的路径字符串(例如/home/user/file.txt)。
    • 不影响原文件的链接计数(原文件的 link count 不变)。
    • 即使符号链接存在,原文件被删除后,符号链接将失效(称为“悬空链接”)。

📌 示例说明:

# 创建测试文件$echo"hello">original.txt# 创建硬链接$lnoriginal.txt hardlink.txt# 创建符号链接$ln-s original.txt softlink.txt# 查看 inode 信息$ls-li131073-rw-r--r--2user user6Apr510:00 original.txt131073-rw-r--r--2user user6Apr510:00 hardlink.txt# 相同 inode131074lrwxrwxrwx1user user12Apr510:00 softlink.txt ->original.txt# 不同 inode
  • original.txthardlink.txt的 inode 编号相同(131073),属于硬链接。
  • softlink.txt的 inode 编号不同(131074),类型为l(link),内容是指向原文件的路径。

✅ 总结对比表:

特性硬链接符号链接
是否共享 inode是(同一 inode)否(独立 inode)
链接数是否增加
能否跨文件系统
能否链接目录通常不允许(防止循环)可以
原文件删除后状态仍可访问(数据未删)失效(悬空链接)
inode 类型普通文件类型特殊 link 类型

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/20 15:03:17

政务信息公开:AI翻译助力政策文件对外传播

政务信息公开:AI翻译助力政策文件对外传播 🌐 AI 智能中英翻译服务 (WebUI API) 一、引言:政务信息出海的翻译挑战与AI破局 随着“一带一路”倡议持续推进和国际交流日益频繁,中国政府机构在推动政务信息公开国际化方面面临前所未…

作者头像 李华
网站建设 2026/7/22 5:47:08

邮件自动翻译:CSANMT集成企业邮箱系统实战

邮件自动翻译:CSANMT集成企业邮箱系统实战 📌 业务场景与痛点分析 在跨国企业日常运营中,中英文邮件往来频繁,但人工翻译耗时耗力,且非专业人员难以保证语言的准确性和表达的专业性。尤其对于技术团队、客户服务部门…

作者头像 李华
网站建设 2026/7/20 20:26:41

小白前端救命符:用 ES6 链判断和 Null 合并操作符少写 80% 判空代

小白前端救命符:用 ES6 链判断和 Null 合并操作符少写 80% 判空代小白前端救命符:用 ES6 链判断和 Null 合并操作符少写 80% 判空代码先别急着喷,这俩新玩意儿到底能干嘛?链判断运算符(?.)——“问路”不再…

作者头像 李华
网站建设 2026/7/20 16:57:35

机器学习 —— 缺失值比例法

摘要:缺失值比例法是一种机器学习特征选择技术,用于处理数据集中缺失值比例过高的特征。该方法通过计算各特征缺失比例并设定阈值,剔除高缺失值特征,从而优化模型性能。实施步骤包括计算缺失比例、设定阈值、剔除特征和模型训练。…

作者头像 李华
网站建设 2026/7/20 8:08:59

2026年盛京宋韵“第一阁”

在盛京快速迭变的城市版图上,每一次人居升级,都是对理想生活的深度回应。当城市繁华与自然静谧难以两全、当人居空间与理想精神境界渐行渐远,一场关于“高端人居迭代”的探索势在必行。2026年,紫金桃源,以一座宋韵“第…

作者头像 李华
网站建设 2026/7/20 11:39:16

如何安全访问 Kickass Torrents:代理选择、设置与最佳实践(2026)

在全球范围内,Kickass Torrents 一直是用户访问受限最严重的资源站之一。 很多用户会发现,即使网址本身仍然存在,也经常出现 无法打开、加载失败、被 ISP 拦截,甚至访问不稳定 的情况。需要明确的是: 大多数 Kickass 无…

作者头像 李华