加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

为什么不允许在UNIX / Linux中使用硬链接

发布时间:2020-12-16 01:10:41 所属栏目:安全 来源:网络整理
导读:我在教科书中读到UNIX / Linux不允许硬链接到目录,但软链接呢?是因为当我们有周期时,如果我们创建一个硬链接,它会指向一些垃圾值? 如果循环是不允许硬链接的唯一原因,那么为什么允许软链接到目录? 不允许使用硬链接,因为它们会导致循环.一旦允许循环形成,
我在教科书中读到UNIX / Linux不允许硬链接到目录,但软链接呢?是因为当我们有周期时,如果我们创建一个硬链接,它会指向一些垃圾值?

如果循环是不允许硬链接的唯一原因,那么为什么允许软链接到目录?

不允许使用硬链接,因为它们会导致循环.一旦允许循环形成,就必须执行标记和清除垃圾收集,以检测何时可以最终删除孤立的目录循环(不再可从根目录访问) – 这在磁盘上非常昂贵.

软链接不会导致此问题,因为它们不会引发目标目录的引用计数;因此你仍然可以通过引用计数(最多只有一个引用:)逃脱.

另一个问题是遍历文件系统的程序(例如,查找)需要避免循环.他们可以通过记住他们看到的每个inode号码来做到这一点,但这很昂贵 – 如果他们可以区分可能导致循环的链接(即软链接)和不会导致循环的链接(正常目录条目),以及跳过软链接,他们不再需要跟踪inode号码.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读