Linux学习之路 -- 文件系统 -- 软硬链接

本文主要介绍在linux系统中,软硬链接的区别

<1>现象和原理

我们先创建一个软链接,我们可以使用" ln -s  + 需要链接的文件名 + 目标文件名称"

这个软链接创建的其实是一个文件,我们可以通过” ll -i“ 命令查看其inode编号。

 下面,我们再创建一个硬链接,硬链接把软链接中的-s选项去掉即可

这里我们其实可以发现一些端倪,硬链接创建的并不是一个文件,因为两者的inode编号是相同的。所以当我们向file.c文件中写入一个内容时,其硬链接文件中也会出现相同的内容。这个硬链接是新的文件名和目标文件inode编号之间的映射关系。

而我们可以观察一下,可以发现属性行中有一个2,这个数字代表的就是硬链接数,这个属于文件的属性,所以inode中存在一个引用计数,计算硬链接数。当引用计数为零时,文件就被删除了。

软链接本质上是一个独立的文件,软链接内容存放的是目标文件的路径,它有点像我们windows系统上的快捷方式。

<2>应用的场景

软链接:建立对特定文件的链接,方便系统对特定文件直接访问。(这个文件可v)
硬链接:目录文件中的"." 和 "..",在刚创建的目录文件中,我们通常可以看见的是硬链接数一般都是2,这是因为目录文件本身算一个,进入该目录后的 "." 文件又算一个。如果目录文件中还包含子目录,那么在子目录文件中的" .. "又算一个硬链接。根据这个特性,我们可以得知,一个目录下的子目录个数就等于硬链接数 - 2。

需要特别注意的是,目录文件可以建立软链接,但用户自己不能建立硬链接,只有操作系统自己可以。因为硬链接可能导致环路问题。

以上就是全部内容,文中如有不对之处,还望各位大佬指正,谢谢!!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值