linux ln -s 链接


一、inode节点

文件都有文件名与数据,这在 Linux 上被分成两个部分:

  1. 文件数据块 (data block),是文件内容真正存储的地方
  2. 元数据 (metadata),是文件的附加属性,如文件大小、创建时间、所有者,inode等信息

在 Linux 中,inode 号即索引节点号才是文件的唯一标识而不是文件名,文件名仅是为了方便人们的记忆和使用,系统通过 inode 号寻找文件数据块,使用命令 mv 移动并重命名文件,其结果不影响文件的用户数据及 inode 号
通常根据分区用途来安排 inode 数量,比如文件数量很多但都很小,则需 inode 较大以便能索引全部文件,否则将会出现这个分区并没有写满而无法创建新文件的情况

二、硬链接

允许一个文件拥有多个有效路径名,以防止“误删”的功能,A和B对于文件系统其实是完全相同的,也就是copy+同步更新
文件A是文件B的硬链接,则两个文件的 inode 节点号相同,既一个 inode 节点对应两个不同的文件名,两个文件名指向一个同一个文件。如果删除其中一个,对另一个没有影响,每增加一个文件名,inode 链接数加一,每删除一个对应的文件名,inode 链接数减一,直到为 0,inode 节点和对应数据块被回收

硬链接的特点:

  • 硬连接是不会建立inode的,只是在文件inode link count++而已,也因此硬链接是不可以跨越文件系统的
  • 不能对目录创建硬链接
  • 不能对不存在的文件创建硬链接

三、软链接

A是B的软链接,则两个文件的 inode 节点号不同,A和B指向的是两个不同的 inode,继而指向两块不同的数据块
A文件实际上是一个文本文件,数据块存放的是另一文件的路径信息,如果B被删除了,A仍然存在,但指向的是一个无效的链接,所以软链接类似于快捷方式

软链接的特点:

  • 软链接可以对一个不存在的文件名进行链接,硬链接不可以(其文件必须存在,inode 必须存在)
  • 可以对目录创建软链接,便利操作会忽略目录的软链接
  • 可以跨越文件系统

四、创建软硬链接命令

硬链接: ln source target
软链接: ln -s source target

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值