Linux 拥有 . 和 . 作为硬链接而不是软链接有什么好处?



我正在学习 linux,并且是 bash 的语法, 当我了解硬链接和软链接时,我这样你就不能为目录创建硬链接,因为它会循环。

但是......和..是硬链接,为什么会这样?

我的意思是,为什么 . 和 .. 可以是硬链接,而我不能在其他目录上创建 hark 链接,为什么它们不仅仅是软链接?

为什么 . 和 .. 打破没有目录硬链接的角色?

有人可以解释将它们作为硬链接而不是软链接的好处吗?

谢谢。

如何 .

和 .. 可以是硬链接,这不是破坏文件系统吗?

POSIX规范要求,几十年来Unix传统已经.并且..硬链接(如果它们不存在,文件系统可能会损坏或消失或损坏而无法修复(。

阅读有关硬链接的维基页面以了解它们。

请记住,(在Unix和Linux上(文件不一定有名称。在 Unix 和 Linux 上,文件是一个 inode(参见 inode(7((,可以有一个(这是通常的情况(、零个或几个名称。目录是名称和索引节点之间的映射,从概念上讲,它需要同时具有.条目和..条目。另请参阅相关问题的答案。

另请阅读操作系统:三个简单的部分,特别是关于文件,目录,文件系统的章节。另请阅读有关VFS的信息。

目录上通常不允许硬链接(然后 link(2( 会失败(,以促进内核中的引用计数方案并禁止文件树中的循环引用。

...条目是在 mkdir(2( 时间创建的。..条目可以通过重命名(2(来更改(从概念上讲,可以通过mount(2((进行更改。rmdir(2( syscall 要求目录为空, 即包含这两个...条目。另见path_resolution(7((和本(。

最新更新