1

什么是链接

Linux文件系统中,有所谓的链接(link),我们可以将其视为档案的别名,而链接又可分为两种 : 硬链接(hard link)与软链接(symbolic link),硬链接的意思是一个档案可以有多个名称,而软链接的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。

不论是硬链接或软链接都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。

硬链接

1. 拥有完全相同的i节点和存储block块,可以看做是同一个文件。

2. 硬链接与原文件具有相同的节点,可通过i节点识别。

3. 不能跨分区。

4. 不能针对目录使用。

5. 修改原文件和链接文件,都会修改原文件内容。

6. 删除原文件和链接文件其中一个,另一个依然可以正常访问原文件。

软链接

1. 类似Windows的快捷方式。

2. 软链接拥有自己的i节点和Block块,但是数据块中只保存原文件的文件名和i节点号,并没有实际的文件数据。

3. 可以跨分区。

4. 可以针对目录使用。

5. 修改原文件和链接文件,都会修改原文件内容。

6. 删除软链接文件,不影响原文件。删除原文件,软链接不能使用。

7. lrwxrwxrwx: l 软链接,软链接文件权限都为 rwxrwxrwx。

命令格式

ln [参数][源文件或目录][目标文件或目录]

常用参数

-s 软链接(符号链接)
-b 删除,覆盖以前建立的链接
-d 允许超级用户制作目录的硬链接
-f 强制执行
-i 交互模式,文件存在则提示用户是否覆盖
-n 把符号链接视为一般目录
-v 显示详细的处理过程

注意事项

  • 软链接一定要写绝对路径。

白菜1031
5.4k 声望1.6k 粉丝