https://onitroad.com 更多教程
例子
- 考虑一个文件“example”,其中有一个硬链接“hlink”和一个符号链接“slink”。
检查文件“example”的目录内容:
$ ls -li example 17920190 -rw-rw-r--. 1 user user 0 Nov 18 03:19 example
- 创建到“示例”的硬链接的命令是:
$ ln example hlink
- 创建到“example”的符号链接的命令:
$ ln -s example slink
- 再次检查目录内容:
$ ls -li 17920190 -rw-rw-r--. 2 user user 0 Nov 18 03:19 example 17920190 -rw-rw-r--. 2 user user 0 Nov 18 03:19 hlink 16836022 lrwxrwxrwx. 1 user user 7 Nov 18 03:21 slink -> example
请注意,'example' 和 'hlink' 指的是同一个 inode,但 'slink' 指的是不同的 inode。
硬链接
硬链接将两个(或者多个)文件名与一个 inode 相关联。
硬链接都共享相同的磁盘数据块,同时充当独立的目录条目。
硬链接可能不会跨越磁盘分区,因为 inode 编号仅在给定设备内是唯一的。
符号链接
符号链接是一种特殊的文件类型,它指向另一个文件。
这个特殊文件的内容是它指向的文件名。
符号链接由“ln -s”命令创建。
一旦符号链接指向的文件被删除,链接仍然指向它,留下一个挂起的链接。
我们可以使用 find 命令来定位符号链接:
# find ./* -type l -ls
这篇短文解释了什么是链接以及符号(软)链接和硬链接之间的区别。
链接是一种机制,允许多个文件名引用磁盘上的单个文件。
有两种链接:
- 硬链接。 hard links
- 软链接(符号链接)。symbolic (soft) links
硬链接和软链接的区别
这是软链接和硬链接之间的简短比较表。
参数 | 软链接 | 硬链接 |
---|---|---|
长度 | 与原始文件名相同 | 与原始文件长度相同 |
Inode | 新的索引节点 | 与原始文件相同 |
限制 | 没有任何 | 相同的文件系统; '不能是目录 |
空间 | 长度名称加 inode | 目录项 |
比较 | 不同的 | 相同的 |
源文件的删除 | 原始文件保留 | 文件保留直到最后一个链接被删除 |
日期:2020-09-17 00:11:03 来源:oir作者:oir