linux学习——软链接、硬链接与复制的区别

1、语法:

硬链接:ln source source1
软链接:ln -s source source1
复制:cp source source1

2、含义:

硬链接:硬链接实际上是为文件建一个别名,链接文件和原文件实际上是同一个文件。可以通过ls -i来查看一下,这两个文件的inode号是同一个,说明它们是同一个文件。

软链接:通过软链接建立的链接文件与原文件并不是同一个文件,相当于原文件的快捷方式。具体理解的话,链接文件内存储的是原文件的inode,也就是说是用来指向原文件文件,这两个文件的inode是不一样的。

复制:相当于将原文件进行一个拷贝,为另一个全新的文件,与原文件没有关系了。修改任何一个都不会影响另一个。

3、特点:

硬链接的特点是这样的:

  • 它会在链接文件处创建一个和被链接文件一样大小的文件,类似于国外网站和国内镜像的关系,
  • 硬链接占用的空间和被链接文件一样大(其实就是同一片空间)
  • 修改链接文件和被链接文件中的其中一个,另外一个随之同样发生变化
  • 硬链接的对象不能是目录,也就是说被链接文件不能为目录
  • 硬链接的两个文件是独立的两个引用计数文件,他们共用同一份数据,所以他们- 的inode节点相同
  • 删除硬链接中的任意一个文件,另外一个文件不会被删除。没有任何影响,链接文件一样可以访问,内容和被链接文件一模一样。

软链接的特点:

  • 软连接的链接文件就是一个基本单元大小的文件,一般为3B,和被链接文件的大小没有关系
  • 软链接的链接文件中存储的是被链接文件的元信息,路径或者inode节点
  • 软连接的连接文件是一个独立的文件,有自己的元信息和inode节点
  • 删除软链接的链接文件,被链接文件不会受到任何影响
  • 删除软链接的被链接文件,链接文件会变成红色,这时打开链接文件会报错,报找不到被链接的文件这种错误
  • 软链接可以链接任何类型的文件,包括目录和设备文件都可以作为被链接的对象

复制的特点:

  • 复制产生的文件是一个独立的文件,有自己的元信息和inode节点
  • 删除或修改复制文件,对原文件不会产生任何影响,反过来也是一样的
  • 复制可以复制文件,也可以复制目录

4、理解:

硬链接文件是一种引用计数的运用,软连接可以理解为Windows下面的快捷方式。

A硬链B 删除B后A依然存在,且可用。
A软链B 删除B后A存在,但不可用了(相当于Windows下快捷方式指向的目标不存在了)

硬链接只能用于文件,不能用于目录;软链接可以为目录建链接。

硬链接不能跨文件系统操作。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值