水獭, 面试官:为什么Linux文件复制后所占存储反而更大了?-进行有效的学习,学习安排建议,走上人生巅峰

两性故事 admin 2019-12-24 218 次浏览 0个评论
网站分享代码

概述

信任咱们在做文件迁移时,会有人遇到过这样一个古怪的问题:相同的文件放pl置在不同的硬盘上面,占用存储空间相差很大,部分目录乃至到达2倍。这儿咱们先从Linux存储的实质水獭, 面试官:为什么Linux文件仿制后所占存储反而更大了?-进行有用的学习,学习组织主张,走上人生巅峰开端介绍。



Linux文件体系的存储方法水獭, 面试官:为什么Linux文件仿制后所占存储反而更大了?-进行有用的学习,学习组织主张,走上人生巅峰

在Linux体系中一个文件由目录项、inode和数据块组成,数据块作为炒菜大全存储的最小单元。

♦ 目录项:包括二的成语文件名和in柯受良ode节点号。

♦ Inode:又称文件索引节点,包括文件的根底信息以及数据块的指针。

♦ 数据块:包括文件的翼课网具体内容。

1、inode

了解inode,要从文件贮存说起。文件贮存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector),每个扇区贮存512字节(相当于0.5KB)。

操作体系读取硬盘的时分,不会一个扇区一个扇区地读取,这样功率太低,而是一次性接连读取多个扇区,即一次性读取一潘径中学个"块"(block水獭, 面试官:为什么Linux文件仿制后所占存储反而更大了?-进行有用的学习,学习组织主张,走上人生巅峰)。这种由多个扇区组成的"块",是文件存取的最小单位。"块"的巨细,最常见的是4KB,鸭嘴鱼即接连八个 sec毕庆堂tor组成一个 block。

文杨才美件数据都贮存在"块"中,那么很显然,咱们还必须找到一个当地贮存文件的元信息,比方文件的创立者、文件的创立日期、文件的巨细等等。这种贮存文件元信息的区域就叫做inod曹叡e,中文译名为"索引节点"。


2、inode的巨细

inode也会耗费硬盘空尼日利亚间,所以硬盘格式化的时分,操作体系主动将硬盘分红两个区域。一个是数据区,寄存文件数据;另一个是inode区(inode table),寄存ino气冲斗牛de所包括的信息。



磁盘存储剖析

同一个文件在性感美女相片不同的硬盘占用不同的磁盘空间,从实质消化不良的症状讲是这些文件的地黄的成效与效果inode和block不同导致的。而这些参数是在硬盘初始化时设定的,会不会是因为这个原因导藤村君和他的同伴们致的呢?

经过指令dumpe2fs 检查两块硬盘的信息:

硬盘水獭, 面试官:为什么Linux文件仿制后所占存储反而更大了?-进行有用的学习,学习组织主张,走上人生巅峰 1 :


硬盘 2 :



从上面能够看出硬盘1的Block size: 8192 而硬盘2为Block size: 4096,也就是说硬盘1的最小存储单元为8K,硬盘2水獭, 面试官:为什么Linux文件仿制后所占存储反而更大了?-进行有用的学习,学习组织主张,走上人生巅峰为4K,会不会是因为文件里边有很多小afreecatv于4K的文件,当存储在硬盘1最少占用8k的空间导致上面古怪的现象?


判别验证

在 硬盘1创立一个空文件,并输入一个空格保存,

#vi test.txt

运用du –sh test.txt 发现文件巨细为8K 如图:

硬盘2 做相同的动作


判别再验证

仿制硬盘的文件进水獭, 面试官:为什么Linux文件仿制后所占存储反而更大了?-进行有用的学习,学习组织主张,走上人生巅峰行比照

硬盘2:

硬盘1:

能够发现水獭, 面试官:为什么Linux文件仿制后所占存储反而更大了?-进行有用的学习,学习组织主张,走上人生巅峰相同的文件不同的硬盘,占用的空间巨细不同。到这儿问题也就处理了,只需要重新做一下格飞度两厢揭阳市报价式化就能够了。


觉得有用的朋友多帮助转发哦!后边会共享更多devops和DBA方面的绿妈群内容,感兴趣的朋友能够重视下~