硬链接和交汇点

NTFS 文件系统支持三种类型的文件链接:硬链接、交汇点和符号链接。 本文概述了硬链接和交汇点。 有关符号链接的信息,请参阅 创建符号链接

硬链接是文件的文件系统表示形式,通过该文件,多个路径引用同一卷中的单个文件。 若要创建硬链接,请使用 CreateHardLinkA 函数。

对硬链接文件所做的任何更改都对通过引用该文件的链接访问它的应用程序立即可见。 文件上的属性反映在该文件的每个硬链接中,对该文件属性的更改将传播到所有硬链接。 但是,文件的目录条目大小和属性信息仅在进行更改时通过的链接 进行明显 更新。 例如,如果清除特定硬链接上的只读属性标志,以便可以删除该硬链接,并且有多个指向该文件的硬链接,则其他硬链接会显示仍设置只读属性,但事实并非如此。 若要将文件更改回只读状态,必须从文件剩余的硬链接之一对文件设置只读标志。

例如,在 C: 和 D: 是本地驱动器,Z: 是映射到 \\fred\share 的网络驱动器的系统中,允许以下引用作为硬链接:

  • 链接到C:\dirb\dirc\lucy.txt 的C:\dira\ethel.txt
  • 链接到D:\dir2\dirx\bell.txt 的D:\dir1\tinker.txt
  • 链接到C:\dir2\mina.txtC:\diry\bob.bak

不允许使用以下引用:

  • 链接到 C:\dirb 的 C:\dira
  • 链接到D:\dirb\lucy.txt 的C:\dira\ethel.txt
  • 链接到Z:\dirb\lucy.txt 的C:\dira\ethel.txt

若要删除硬链接,请使用 DeleteFileA 函数。 无论硬链接的创建顺序如何,都可以按任何顺序删除这些链接。

交接点

交汇点 (也称为软链接) 不同于硬链接,因为它引用的存储对象是单独的目录。 交汇点还可以链接位于同一计算机上的不同本地卷上的目录。 否则,交汇点的工作方式与硬链接相同。 交汇点通过 重新分析点实现。

假设“硬链接”部分中的条件相同,则允许将以下引用用作交汇点:

  • 链接到 C:\dirb\dirc 的 C:\dira
  • C:\dirx 链接到 D:\diry

不允许使用以下引用:

  • 链接到C:\dirb\two.txt 的C:\dira\one.txt
  • 链接到 Z:\dir2 的 C:\dir1

另请参阅

创建符号链接