软硬链接详解

目录

一、软硬链接命令

二、特征

三、相关知识


一、软硬链接命令

ln -s target link_name
  • -s:选项表示创建一个符号链接(软链接),如果没有-s就是硬链接
  • target:是要指向的目标文件或目录的路径。
  • link_name:是新建的软链接的名称或路径。

二、特征

软链接是一个独立的文件,因为有独立的inode
软链接的内容:目标文件对应的路径字符串,类似windows中的快捷方式
删掉目标文件,软连接就失去目标
软链接有什么用?
软链接相当于快捷方式

硬链接不是一个独立的文件,因为没有独立的inode,用的是目标文件的inode
硬链接就是一个文件名和inode的映射关系,建立硬链接,就是指定目录下,添加一个新的文件名和inode编号的映射关系
 硬链接相当于重命名


属性中有一个叫做硬链接数:(标红部分)
也叫做文件的磁盘级引用计数:有多少个文件名字的字符串,通过inode编号指向inode
这个数字是几,就说明有几个文件名跟这个inode编号有映射关系

为什么目录的引用计数是2呢?


因为每一个目录都默认有两个东西:. 和 ..


. 表示当前路径,即重命名,所以对当前目录来说,引用计数是2
.. 表示上级目录
所以,任何目录新建时,引用计数都是2

而如果在空目录下又新建一个目录
那么当前目录的引用计数+1,变成3
为什么?
因为新建目录下的..也指向当前目录
所以,对于该目录来说,有三个文件名指向inode
所以,引用计数为3

所以,根据上述,我们可以知道:
一个目录下的目录文件数 = 引用计数 - 2
这个2指向的是其本身和.

三、相关知识

Linux中不允许给目录设置硬链接

为什么?
假设一个目录下,设置了一个硬链接A,指向该目录上级的目录
例如根目录
此时,如果我要访问文件A,就会发生循环绕圈,造成路径环绕
硬链接还可以做文件备份

软硬连接的本质区别就是:有没有inode

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

二十5画生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值