前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >文件系统--软硬链接

文件系统--软硬链接

作者头像
南桥
发布2024-05-26 08:21:39
570
发布2024-05-26 08:21:39
举报
文章被收录于专栏:南桥谈编程

现象

建立软链接

建立硬链接

代码语言:javascript
复制
// 删除软硬链接都可以用 unlink 指令
unlink soft-link

软链接

软链接是一个独立的文件,因为有独立的inode number

软链接的内容:目标文件所对应的路劲字符串如果我们直接查看软链接文件,就可以直接查看目标文件的内容了,这类似于Windows系统中的快捷方式;如果直接把目标文件删除,那么再去查看软链接文件,是无法查看的。

软链接类似于Windows系统中快捷方式:

硬链接

硬链接的inode编号和目标文件是一样的,硬链接不是一个独立的文件,因为没有独立的inode number,用的是目标文件的inode

属性中有一列硬链接数(文件的磁盘级引用计数,表示有多少个文件名字符串通过inode number指向inode),因此建立一个硬链接,对应的硬链接数就+1,删除一个就-1,如果减为0,就相当于删除这个文件。

为什么创建一个文件时,显示文件的硬链接数是1,但是创建一个目录时,显示硬链接数是2?

查看dir的所有信息

dir目录中.指向dir的重命名(1314154),dir本身也是1314154,所以硬链接数是2 在dir文件中再去新建一个otherdir文件,会发现dir的硬链接数是3,这是因为在otherdir文件中存在一个..,这指向dir

因此,任何一个目录刚开始新建的时候,硬链接数一定是2,在该目录中新建一个目录,会让该目录的硬链接数自动+1,一个目录内部有几个目录:该目录的硬链接数-2

硬链接就是一个文件名和inode的映射关系,建立硬链接,就是在指定目录下添加一个新的文件名和inode number的映射关系。

将目标文件删除后,再去查看硬链接文件,它的属性和内容依然存在,这就相当于对目标文件重命名。

Linux系统不允许给目录建立硬链接,避免形成路劲环绕

总结: 硬链接作用:

  1. 构建Linux的路劲结构,让我们可以使用...来路劲定位
  2. 一般用来做文件备份
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-05-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 现象
  • 软链接
  • 硬链接
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档