Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在阅读有关版本 6 unix 的文本,并且刚刚了解了 inode。我有以下问题:
假设我在一个目录中有一个文件,并且在其他地方有一个指向该文件的链接。我是否正确地说,如果我删除文件,inode 仍然存在,因为 refcount 不为 0?这是否意味着在链接存在时文件并没有真正删除,我可以通过 inode 号访问文件?
是的,如果链接是硬链接。不,如果它只是一个符号链接。
硬链接基本上是位于多个目录中的相同文件,具有相同的 inode。将文件与其目录之一取消链接只会将其引用计数减少一。它不会被删除,直到它达到零。
符号链接有自己的 inode 并将您重定向到另一个条目。如果删除其目标,符号链接将悬空。可以删除符号链接本身,而不会影响目标文件或目录。
文件名只是目录表中指向磁盘某处的条目。硬链接只是指向相同数据的另一个名称条目。任何后续的硬链接都与原始文件名条目无法区分。
所以答案是肯定的。