ln指令,软链接的创建(-s),删除(源文件和软链接,rm和unlink),硬链接的创建+图示,删除(硬链接数),目录文件中的硬链接数(两个隐藏文件),软硬链接的区别+应用场景

目录

软硬链接

ln指令

软链接

创建软链接

示例

介绍

删除

删除源文件

删除软链接

rm

链接普通文件

链接目录

硬链接

创建硬链接

介绍

示例

介绍

创建硬链接的图示

删除

删除源文件

硬链接数 

删除源文件后,硬链接还能用的原因

普通文件

目录文件

引入

隐藏文件

.

..

软硬链接的区别

介绍

应用场景

​编辑


软硬链接

ln指令

可以将一个文件或目录链接到另一个位置

ln + 要链接的文件 + 生成的链接(硬链接/软链接)

软链接

创建软链接

给ln指令加上 -s 选项,就可以生成一个软链接

示例

介绍

  • 创建了一个指向目标文件或目录的符号链接,在文件系统中以一个特殊的文件存在,生成的软链接有自己的inode -> 是一个独立的文件
  • 可以使用软链接的名字来执行原程序(可以理解为 -- 它的内容是链接文件的路径)
  • 软链接类似于Windows系统中的快捷方式

删除

删除源文件

  • 当删除软链接所指向的原始文件时,软链接仍然存在,但指向的目标文件不再存在
  • 此时,软链接被称为空链接或悬空链接(dangling link)
  • 使用空链接将无法找到目标文件
删除软链接
rm
链接普通文件

对源文件无影响

链接目录

直接rm,删除的是软链接本身,对目录中的文件和目录无影响 

若在文件名后加 / ,则会将指向的目录下的所有文件删掉 

 

可以看到,unlink可以删除软链接,也可以删除源文件

  • 它是用于删除文件的命令行工具
  • 可以删除文件系统中的文件,包括常规文件、符号链接和设备文件等,但不能删除目录
  • 所以unlink可以防止我们误删目录中的文件

 

硬链接

创建硬链接

介绍

ln指令不加-s选项,即可生成硬链接

只能链接普通文件

示例

可以看到,硬链接的inode和链接文件的inode一样

说明它没有独立的inode -> 所以,硬链接不是一个独立的文件

不能链接目录:

介绍

  • 硬链接是指多个文件入口指向相同的数据块
  • 创建硬链接的图示

    可以将创建硬链接的过程,看成上图

  • 它只是在当前的目录文件中,添加了自己的文件名和链接文件的inode的映射

删除

删除源文件

  • 并不会影响硬链接的使用
  • 说明这里删除文件的时候,仅仅是将code和对应inode编号的映射去掉了而已,并没有删掉inode
  • 并且!!!
  • 删前和删后,有一列数字,hard从2变为了1
  • 那列数字代表的实际上是该文件的硬链接数

硬链接数 

为了统计多少个文件名与该数据块相关联,inode结构内会有一个变量来计数,也就是硬链接数

删除源文件后,硬链接还能用的原因
  • 删除文件是将对应inode中的计数-1
  • 当该值为0时,才会真正删除这个文件,释放相关的数据块和inode
  • 因为没有文件名和它关联了,说明用户已经用不到它了
普通文件

被创建出来后,这个数字是1(原始文件本身即是一个链接)

为该文件创建硬链接后,该数字将根据创建的硬链接数量而增加

目录文件
引入

我们可以看到,创建的d1目录文件,硬链接数是2,为什么?

  • 其中一个肯定是它自己
  • 那另一个硬链接是谁?
隐藏文件

在每个目录内,都会有两个隐藏文件(实际上,他们都是文件名)

.
  • . 代表该目录的文件名
  • 可以看到 ,. 和 d1 的inode是一样的,所以 . 就是该目录文件的另一个硬链接
..

当我们在d1中再创建一个目录时,会发现d1的硬链接数变成了3?

  • 是因为新目录下的..导致的
  • 而..可以帮我们回到上级目录
  • 原因就在于 : 它是上级目录文件的硬链接

软硬链接的区别

介绍

应用场景

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值