Linux基础笔记11 | 链接文件详解

链接的概念

  • 硬链接(Hard Link)

  • 软链接(Soft Link)

  • ln 命令默认不带参数下创建的是硬链接,带有-s创建的是软链接,软链接类型是 l(小写的L)

  • 在 ext2、ext3、ext4默认的文件系统中,存在于磁盘分区中的文件不管是什么类型都会分配一个独一无二的编号,这个编号就是索引节点(inode)

硬链接

  • 是指通过索引节点(inode)进行的链接
  • 多个文件名指向同一个索引节点是正常且被允许的,这种情况下文件被称为互为硬链接文件
  • 同一分区/同一文件系统中,inode 号相同的文件一定是硬链接文件
  • ext 文件系统的原理,只要文件的索引节点有一个以上的硬链接,删除其中的一个文件不会影响到索引节点本身和其他未被删除的链接的
  • 创建硬链接针对的是文件,不能针对目录
## 创建一个硬链接:硬链接文件会自动生成
[root@iZrgngz5lz7qzsZ tmp]# echo "helloworld" > test.log
[root@iZrgngz5lz7qzsZ tmp]# cat test.log
helloworld
[root@iZrgngz5lz7qzsZ tmp]# ln test.log test.log.bak
[root@iZrgngz5lz7qzsZ tmp]# cat test.log
helloworld
[root@iZrgngz5lz7qzsZ tmp]# cat test.log.bak
helloworld
[root@iZrgngz5lz7qzsZ tmp]#

在这里插入图片描述

软链接

  • 软链接也被称为符号链接,类似于 windows 系统中的快捷方式
  • 软链接指向的是源文件的位置信息内容,通过软链接文件,可以迅速定位到源文件的实体
  • 创建方式ln -s 源文件 软链接文件:目标软链接文件是不能存在的
  • 系统使用软链接文件的方式:通过软链接文件自身的 inode,读到了软链接信息,并指向了原始文件,进而读到了原始文件名以及相关的 inode,再通过原始文件的 inode 读到原始文件的内容(block)
  • 软链接文件的 block 不存放源文件位置,而是直接将源文件位置存放在 inode 里面,提高效率
  • 软链接可以对目录和文件进行操作
  • 删除源文件,软链接文件依然存在,但是无法访问到具体内容
  • 软链接和源文件是不同类型的文件,也是不同的文件,inode 也不相同
  • 可以跨文件系统作软链接
[root@iZrgngz5lz7qzsZ tmp]# echo "helloworld" > test.log
[root@iZrgngz5lz7qzsZ tmp]# ln -s test.log test.log.link
[root@iZrgngz5lz7qzsZ tmp]# ll
total 12
drwx------ 3 root root 4096 Sep  4 16:59 systemd-private-2fc348c1dfab4ac6ae937ccea432c162-chronyd.service-EmprP0
drwx------ 3 root root 4096 Sep  4 16:08 systemd-private-4a1aa9a3dba7426d84bed5887b4bad8b-chronyd.service-0ujkRX
-rw-r--r-- 1 root root   11 Sep  5 15:28 test.log
lrwxrwxrwx 1 root root    8 Sep  5 15:28 test.log.link -> test.log

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值