什么是链接
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
显示详细的处理过程
注意事项
- 软链接一定要写绝对路径。