硬链接和软链接

1.硬链接

一般情况下,文件名和inode编号是一一对应的关系,每个inode号码对应一个文件名。但UNIX/Linux系统多个文件名也可以指向同一个inode号码。这意味着可以用不同的文件名访问同样的内容,对文件内容进行修改,会影响到所有文件名。但删除一个文件名,不影响另一个文件名的访问。这种情况被称为硬链接。

创建硬链接的命令为ln 源文件 目标文件 

inode信息中有一项叫做“链接数”,记录指向该inode的文件名总数,这时会增加1,变成2。

同理,删除一个jf2.txt文件,会使jf1.txt inode节点中的“链接数”减1。如果该inode值减到0,表明没有文件名指向这个inode,系统就会回收这个inode号码,以及其所对应block区域。

 

注意:硬链接不能跨分区链接,硬链接只能对文件生效,对目录无效,也即是目录不能创建硬链接。 

2.软链接

除了硬链接以外,还有一种链接——软链接。文件jf1.txt和文件jf2.txt的inode号码虽然不同,但是文件jf2.txt的内容是文件jf1.txt的路径。读取文件jf2.txt时,系统会自动将访问者导向文件jf1.txt。

无论打开哪个文件,最终读取的文件都是jf1.txt。这时,文件jf2.txt就称为文件jf1.txt的"软链接"或者"符号链接"。

文件jf2.txt依赖于文件jf1.txt而存在,如果删除了文件jf1.txt,打开文件jf2.txt就会报错。

软链接与硬链接最大的不同是文件jf2.txt指向文件jf1.txt的文件名,而不是文件jf1.txt的inode号码,因此文件jf1.txt的inode链接数不会发生变化。

创建软链接的命令为ln -s 源文件 目标文件 

 注意:软链接可以跨分区链接,软链接支持目录的同时也支持文件链接。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值