linux软链接与硬链接介绍
今天需要要使用一点关于,映射的知识,在网上看到了一些,分享给大家。
软连接
命令: ln -s 原文件 目标文件
特征:
1.相当于windows的快捷方式
2.只是一个符号连接,所以软连接文件大小都很小
3.当运行软连接的时候,会根据连接指向找到真正的文件,然后执行
4.所有软连接文件的权限是777,而真正的权限是由指向的那个文件决定的
5.原文件丢失,软连接无法访问,会报找不到的错误
6.ls -al以后,软连接后面箭头指向的是原文件
硬连接
命令: ln 原文件 目标文件
特征:
1.原文件和连接文件的属性完全一样
2.连接文件和原文件的关系类似于:复制+同步更新
3.当原文件丢失,硬连接文件还可以访问
4.不能跨分区,不能针对目录使用
5.原理:
原文件和硬链接文件的i节点号是相同的(ls -i),1个文件名对应一个i节点,1个i节点可以通过多个文件名访问,所以,他们的属性完全相同,并且修改了其中一个的内容另一个也会跟着修改
上面这个出自文章:https://www.cnblogs.com/413xiaol/p/6986473.html
另外,在使用过程中,发现软连接的两个问题需要注意:
-
在创建软连接的过程中,请使用绝对路径,否则,当你进入软连接目录时会提示错误:
-bash: cd: Public: Too many levels of symbolic links
告诉我们找不到文件位置。
-
删除需要格外注意。
为什么这么说?
因为在linux中,软连接删除时 rm 目标文件名 会删除软连接文件,但是 如果rm -rf 目标文件名,会导致目标源文件被删除,而软连接仍然存在。