想象一下:当我们有数据需要实时同步到其他文件夹中,同时不想影响到源数据的结构,尤其面对素材资源与文档分开存放,在某个时刻需要汇总发送给他人。这时就需要用到“文件链接”的功能,文章内容虽然介绍了 windows 系统相关的功能,但也有 Linux 的对比,可作为参考。
由于快捷方式是一种比较直观和易于使用的链接方式,但它实际上是一个独立的文件,只包含路径信息,而不是直接指向目标文件。
平时所说的软、硬链接是针对 NTFS(windows) 或 ext4(Linux) 的文件系统展开的。
NTFS文件系统的三大链接方式
软链接或符号链接的特点
一、符号链接 ≈ 软链接
Windows中的 SymbolicLink(符号链接)等同于Linux中的软链接(soft link或symbolic link)。它们都是创建一个特殊类型的文件,该文件包含指向另一个文件或目录的路径,从而实现了一种间接的引用关系。
二、SymbolicLink 与 Junctions 的区别
SymbolicLink 与 Junctions 在以下方面存在一些区别:
- 目标类型:Junctions 只能是目录,而 Symbolic Links 可以指向文件或目录。
- 安全性:虽然符号链接在功能性方面更为强大,支持远程定位,但这同时也提高了它们的安全风险。相比之下,Junctions由于被限制在本地路径中,因此相对较安全。
硬链接的特点
什么是硬链接
硬链接是一个指向文件的指针,它指向文件系统中的物理文件。
在Linux系统中,硬链接是直接指向文件的inode(索引节点)的链接,因此,硬链接和原始文件在文件系统层面没有任何区别,它们指向的是同一个文件数据块。创建硬链接就是在文件的inode中增加一个新的文件名,因此硬链接不会占用额外的磁盘空间。同时,由于硬链接直接指向文件的inode,因此即使原始文件名被删除,只要硬链接还存在,就可以通过硬链接访问文件的数据。
简单说:需要windows和Linux不同的系统,但是两者对硬链接的定义几乎一样,即两个文件之间通过某种链接,使其保持同步(除删除外)