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

时间:2018-05-09 07:40:48

标签: linux linux-kernel

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

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

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

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

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

感谢。

1 个答案:

答案 0 :(得分:0)

  

如何。和..可以是硬链接,是不是打破了文件系统?

POSIX规范要求,并且Unix传统有...是几十年来的硬链接(如果它们不存在,文件系统可能会被破坏或消失或被破坏而不可能修理)。

阅读hard links上的wikipage以了解它们。

请记住(在Unix和Linux上)文件没有必要的名称。在Unix和Linux上,文件是inode(另请参阅inode(7))并且可以有一个(这是通常的情况),零个或多个名称。目录是名称和inode之间的映射,在概念上要求同时具有...条目。另请参阅thisthat相关问题的答案。

另请阅读Operating Systems: Three Easy Pieces,特别是关于filesdirectoriesfile systems的章节。另请阅读VFS

目录上通常不允许使用硬链接(并且link(2)将失败)以促进内核中的reference counting方案并禁止文件树中的circular references

...条目是在mkdir(2)时创建的。 ..条目可由rename(2)更改(概念mount(2)更改)。 rmdir(2)系统调用要求该目录为空,即仅包含 这两个.& ..条目。另请参阅path_resolution(7)(和this)。