1 创建链接
(1)创建硬链接
从左到右,-rw-r--r--中第一个-表示文件类型,rw-r--r--表示文件权限;1表示链接数;第一个root表示文件所有者;第二个root表示文件所属组;0表示文件大小;Jul 23 10:42 表示文件修改时间;
创建f1的硬链接f1hlink后,f1的链接数加一,且f1与f1hlink的属性(节点编号、类型、权限、文件大小、修改时间)完全相同。
(2)创建软链接
创建f2的软链接f2slink后,f2的链接数不变,且f2与f2slink的属性(节点编号、类型、权限、文件大小、修改时间)不同。
2 修改
(1)硬链接
修改f1文件后,f1hlink文件的大小以及修改时间同步更新;
修改f1hlink文件后,f1文件的大小以及修改时间也同步更新。
(2)软链接
修改f2后,f2slink的大小以及修改时间都不变,仍然是被创建时的时间以及大小,但访问f2slink会发现其内容同步更新;
修改f2slink文件后,f2的大小以及修改时间发生变化,而f2slink的大小以及修改时间仍不变。
3 删除
(1)硬链接
删除f1后,f1hlink仍可访问;
删除f1hlink后,f1仍可访问。
(2)软链接
删除f2slink后,f2仍可访问;
删除f2后,访问f2slink,其内容为空。
4 对目录创建链接
(1)硬链接
对Desktop目录创建硬链接,提示hard limk not allowed for directory,即目录无法创建硬链接。
(2)软链接
对Desktop目录创建软链接成功。
5 跨分区创建链接
(1)硬链接
f1位于app分区,创建位于 root分区的硬链接f11时,提示硬链接无法跨分区。
(2)软链接
f2位于app分区,创建位于 root分区的软链接f22时,没有出现错误提示,表示跨分区创建软链接成功。
6 总结
产生上述现象的根本原因在于硬链接与软链接的本质不同,硬链接本质上是一个文件有多个文件名,所以原文件与其硬链接的属性完全相同,节点编号也相同,且关系平等;软链接本质上类似于Windows中的快捷方式,原文件与其软链接关系是不平等的,软链接的大小并不是文件内容的大小,而是原文件名的字符个数(待考证)。软硬链接的区别如下:
(1)硬链接创建后链接数加一;软链接创建后链接数不变
(2)硬链接与原文件关系平等,删除任意一个互不影响;软链接与原文件关系不平等,删除原文件会影响软链接
(3)硬链接不可用于目录;软链接可用于目录
(4)硬链接不可跨分区;软链接可跨分区
本文详细介绍了Linux中的硬链接和软链接的创建、修改、删除等操作,以及对目录和跨分区创建链接的情况。硬链接共享同一文件节点,修改任意链接文件内容同步,删除不影响其他链接。软链接类似快捷方式,不共享节点,修改软链接不影响原文件,删除原文件使软链接失效。硬链接不能用于目录和跨分区,软链接则可以。
1918

被折叠的 条评论
为什么被折叠?



