编辑损坏的符号链接是将其重新链接到之前删除的目标文件

编辑损坏的符号链接是将其重新链接到之前删除的目标文件

file4.txt我有一个最初链接到目标文件()的符号链接file3.txt。一旦我删除了目标文件,我的符号链接就会按预期被破坏,如下图所示。

在此输入图像描述

但是,当我尝试再次向损坏的链接写入内容时,该链接将重新链接到具有相同名称的目标文件(在我的例子中为 file3.txt),并复制所有内容(如下图所示)。 在此输入图像描述

我对 Linux 很陌生,并试图找出为什么以及如何发生这种情况的原因。为什么已删除的文件再次被创建并再次重新链接到先前损坏的相同符号链接。先感谢您!

答案1

对于不作用于符号链接本身的任何工具,如果是到then (路径名)file4.txt的符号链接,则解析为(路径名)。看file3.txtfile4.txtfile3.txt路径名解析

这意味着你cat > file4.txt已经按照cat > file3.txt意愿行事了。file3.txt如果该命令尚不存在,则此类命令会尝试创建。新的file3.txt(文件)与旧的(已删除的)(文件)无关file3.txt,除了新文件是,并且旧文件可以作为file3.txt(路径名)访问。

任何符号链接都通过将其内部存储为文本来指向某个路径。它不直接指向文件或索引节点;它指向某个路径,无论是否采用,在目录树中都有意义或不。在您的情况下,一旦file3.txt重新创建,您的符号链接就会变得有效。新文件不是旧文件,但可以通过相同的路径名访问它,这对符号链接很重要。如果您创建了一个名为 then 的目录file3.txt,则符号链接将从那时起指向该目录。

相关内容