一、硬链接(Hard Link)的概念
硬链接也称为实体连接它是在某个目录下新增一笔档名链接到某 inode 号关连记彔。
硬链接本质:同一个文件名,但是有多个名字,原文件删除时,新建的文件仍然可以使用。
硬链接的创建:
语法:ln filename [linkname ]
二、软链接(Symbolic Link)的概念
也叫做符号链接它是指向另一个文件的特殊文件,这种文件的数据部分仅包含它所要链接文件的路径名。
软链接的本质:可以针对目录创建,可以跨分区、跨设备;一旦源文件删除了,就不起作用了,软链接是工作中最常用的。
软链接的创建:
语法:ln -s filename [linkname]
1、创建/app下的目录
mkdir -p /app/hex/{a1/{b1,b2,b3},a2,a3,a4,a5/{c1/F1,c2}}用tree显示目录树
2、在以F1为源文件,b3目为文件创建一个软链接;先找到目标文件,目标用相对路径../app/hex/a1/b3/link来表示,link 这文件是自己创建的,在从目标文件中找回源的相对路径,路径用 ../../a5/c1/F1来表示,这样它的软链接就建立起来了。
三、软链接和硬链接之间的区别:
1、硬链接共享一个inode节点,删除了源文件不影响;软链接一个链接有一个节点,删除源文件将影响其工作。
2、创建硬链接链接数加1,不能跨分区创建链接,不能跨设备,不支持目录创建;软链接支持跨分区,跨设备,支持目录的创建。
3、软链接创建时,用的相对路径是相对于软链接文件的路径不是相对于当前工作目录的路径。