Linux如何做到秒速复制上百G文件?

有点标题党了,其实主要是想讲讲Linux文件存储的原理,也就是inode,以及硬链接和软链接的区别。

话说有一个场景,数据文件存储在一个个分级的目录下,简单的描述一下,类似以下的结构:

  1. 目录1
    1. 文件1.1
    2. 文件1.2
    3. 文件1.3
  2. 目录2
    1. 文件2.1
    2. 文件2.2
  3. 目录3
    1. 文件3.1
    2. 文件3.2
  4. 目录n
    1. 文件n.1
    2. 文件n.2

我们现在想把文件1.2、文件2.1、文件3.1、文件……、文件n.1发送给其他人。最简单的方法是,将我们需要的文件都复制到同一个目录下,打包,下载到本地,或者直接复制到其他服务器上。

现在的问题是,这些数据文件很大,每个文件动辄好几g,如果每个文件都复制一份,会耗时耗空间。

大佬过来看一眼,说:你创建这些文件的硬链接到你的指定目录,不就行了?不占空间。

我说:啥?啥是硬链接?

1、文件是怎么存储的?谈谈inode和数据块

讲硬链接之前,我们需要先了解一下前置知识:Linux是怎么存储文件的。

文件自然是保存在磁盘上的,但是是以什么样的形式、什么样的结构存储的呢?

操作系统一般会将磁盘分为一个个的块(block)来读取,而这个块,就是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小白码上飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值