linux---硬链接和软链接

文件系统
磁盘上文件读写存储与查找系统(管理)就是文件系统,在每一个分区都会存在自己的文件系统。
在这里插入图片描述
在这里我们有swap交换分区和文件分区,我们这里只介绍文件分区。
在这里插入图片描述在文件分区都会有上图中的分块管理

  • inode每个文件都会有一个inode节点,存储我们文件的信息,例如大小,权限,时间,占用大小…
  • 超级块:纪录文件分区信息,例如块个数,节点区域等等
  • data:标记那些数据块已经使用
  • inode_bitmap:节点位图区域
  • data_bitmap:数据位图区域

文件存储过程:通过inode_bitmap在inode区域获取空间inode节点,通过data_bitmap获取空闲的数据块,在inode节点中纪录文件信息以及数据块的位置,并且将文件数据写入到数据块中,将自己目录项信息添加到所在目录文件中去。
在这里插入图片描述
文件读取过程:通过目录项中获取文件的inode节点号(文件唯一),通过inode节点号在inode区域找到inode节点,通过inode节点中的数据块地址信息找到我们制定位置的读取信息。
在这里插入图片描述软连接和硬链接
软连接:创建软连接,创建了一个新的文件(包括了inode节点等数据),但是他的数据段存储的是建立的路径,通过源文件的路径便可找到数据段
硬链接:一个文件的名字,在目录项中与源文件使用同一个inode节点
创建软硬链接

  • ln src des
    创建硬链接,一般使用hard后缀名字
    在这里插入图片描述
    执行的结果就是:
    在这里插入图片描述注意到我们的硬链接计数变为了2;

  • ln -s src des
    创建软链接,一般使用soft后缀名字
    在这里插入图片描述
    在这里插入图片描述注意我们的软链接文件的硬链接计数为1,就是他自己本身。
    当我们删除掉源文件的时候我们可以看到下图
    在这里插入图片描述

  • 软硬链接实质
    我们的硬链接仍然可以读取到我们的文件内容,但是我们的软链接就读取不到了我们的内容,变为了红色。说明我们硬链接是创建一个新的文件,在目录项中添加自己的文件,并且inode节点是和源文件一样的,当源文件删除的时候我们还能找到数据段。软链接创建了一个新的文件,并且是一个新的inode节点,知识数据段存储的是源文件建立的路径,当我们删除掉了我们的源文件,那源文件的路径也就失效了,所有我们的软链接文件就找不到我们的数据段。

  • 多重软硬链接
    其实在我们的硬链接和软链接的源文件仍旧可以是我们的软硬链接文件,
    在这里插入图片描述在我们创建多个硬链接文件的时候实际上都创建了一个新的文件都只想内存中存储的源文件的位置,但是软件链接文件是存储的被链接文件的路径,所有我们常说软链接文件又称为快捷方式文件。
    软硬链接的区别

  • 硬链接共用同一个inode节点,软链接使用自己独立的inode节点

  • 删除源文件软链接文件将失效,软链接文件只是链接数计数减少,但是当我们的硬链接计数减为0的时候就相当于删除掉了文件

  • 软链接可以对目录进行创建,硬链接只能对文件创建(因为在不同的磁盘分区的情况下所用的文件系统可能是不一样的,或者inode节点可能会重复,此时我们软链接会创建自己的inode节点,所有不会发生inode节点重复,但是硬链接是共用同一个inode节点,可能会发生重复)

  • 软链接可以跨分区创建,但是硬链接不会(理由同上面的一样)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux中有两种链方式:(也称符号链)。它们都是将一个文件名与一个文件关联起来的方式,但它们的实现方式略有不同。 1. 是指在一个文件系统中,将一个文件的文件名关联到文件的 inode 号上,使得该文件有两个或多个文件名,这些文件名指向同一个文件数据块。的本质是在文件系统中为同一个文件创建了多个文件名,这些文件名共享同一个 inode 号和文件数据块。 的特点: - 不能跨越文件系统,即只能在同一个文件系统内使用。 - 可以看做是同一个文件的不同名称,因此对其中一个文件进行修改将会影响到所有的文件。 - 不能对目录进行。 - 删除其中一个文件并不会影响其他文件,因为文件之间没有任何关系。 2. (也称符号链)是指在文件系统中创建一个特殊的文件,它包含了另一个文件的路径信息。文件可以看做是一个快捷方式,它指向的是另一个文件的路径。 的特点: - 可以跨越文件系统,即可以在不同的文件系统之间使用。 - 可以对目录进行。 - 如果原文件被删除或移动,文件将失效。 - 文件本身可以删除而不会影响原文件。 总的来说,都是将一个文件名与一个文件相关联的方法,但它们的实现方式不同,使用时需要根据实际需求选择。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值