软硬链接

在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号inode.

在Linux系统中,链接分为硬链接和符号链接。

1)软链接(符号链接)

软链接,其实就是新建立一个文件inode(具有新的i节点)这个文件就是专门用来指向别的文件的(类似于Windows下的快捷方式)。软链接产生的是一个新的文件,但这个文件的作用就是专门指向某个文件的,删了这个软链接文件,原来的实体原文件还是存在的,保持不变。但要是删除原来的文件,则相应的软链接不可用(cat那个软链接文件,则提示“没有该文件或目录”)。符号链接可以跨文件系统,即可以跨磁盘分区。符号链接的文件类型位是l,如下图:

2)硬链接

硬链接实际上是为原文件建立一个别名,链接文件和原文件实际上是同一个文件。可以通过ls -i来查看一下,这两个文件的inode号是同一个,说明它们是同一个文件。它只是在文件原来的inode link count域再增加1而已,也因此硬链接是不可以跨文件系统的。硬链接删除的时候,系统调用会检查inode link count的数值,如果它大于等于1,那么inode不会被回收,因此文件的内容不会被删除。(文件类型和原文件类型相同)

总结如下:软链接可以跨文件系统,硬链接不可以。软链接可以对一个不存在的文件名(filename)进行链接。(此时如果你vi这个软链接文件,linux会自动新建一个文件名为filename的文件),硬链接不可以(其文件必须存在,inode必须存在)。软链接可以对目录进行链接,硬链接不可以。ln命令默认创建的是硬链接,使用-s开关可以创建软链接。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值