为了搞懂这二者关系,我在网上搜集了不少的资料,特意整理一番。
1、硬链接
-
硬链接实际上是为文件建一个别名,链接文件和原文件实际上是同一个文件。
-
硬链接,以文件副本的形式存在。但不占用实际空间。
-
inode号是同一个,说明它们是同一个文件。
-
硬链接只能用于文件,不能用于目录。
-
硬链接不能跨文件系统操作。
-
场景:A硬链接B, B删除后,A仍然能用
2、软链接
-
软链接建立的是一个指向,即链接文件内的内容是指向原文件的指针,它们是两个文件。
-
软链接是存放另一个文件的路径的形式存在。
-
软链接可以对一个不存在的文件名进行链接,硬链接必须要有源文件。
-
软链接可以为目录建链接。
-
场景:A软链接B , B删除后,A不能用(相当于window的快捷方式,找不到目标文件)。
3、命令
ln命令格式:
ln [参数] [源文件或目录] [目标文件或目录]
主要参数:
- -i 交互模式,文件存在则提示用户是否覆盖。
- -s 软链接(符号链接)。
- -d 允许超级用户制作目录的硬链接。
- -b 删除,覆盖以前建立的链接
- 软链接 (符号链接) ln -s source target
- 硬链接 (实体链接)ln source target