inode与block

inode概述

硬盘要分区,然后格式化,创建文件系统。
inode,index node索引节点。在每个linux存储设备或存储设备的分区(存储设备可以是硬盘、软盘、U盘…)被格式化为ext4文件系统后,一般有两部分:
第一部分是inode(很多个)
第二部分是block(很多个)

block是用来存储实际数据用的,例如:照片、视频等普通文件数据。
inode就是用来存储这些数据属性信息的(也就是ls -l 的结果),inode包含的属性信息包括文件大小、属主、归属的用户组、读写权限、文件类型
、修改时间,还包含指向文件实体的指针的功能(inode节点–block的对应关系)等,但是,inode唯独不包含文件名

当用ls查看某个目录或文件时,如果加上-i参数,就可以看到inode节点了。
这里写图片描述

inode的值是398432。

inode与block

inode除了记录文件属性的信息外,还会为每个文件进行信息索引,所以就有了inode的数值,操作系统根据指令,即可通过inode的值最快的找到相对应的文件实体。文件,inode、block之间的关系如下:

这里写图片描述

以书为例,存储设备或分区就相当于这本书,block相当于书中的每一页内容,而inode就相当于这本书前面的目录,一本书有很多内容,一个知识点可能有多页,如果想查找某部分或某知识点的内容,我们一般先查书的目录,通过目录能更快的找到我们想要看的知识点的内容。

inode的大小

因为inode要存放文件的属性信息,所以inode是有大小的,CentOS5 inode的默认大小为128字节,而CentOS6 inode的默认大小是256字节,inode的大小在文件系统被格式化之后就无法更改了,格式化前可以指定inode大小。

dumpe2fs - 显示ext2/ext3/ext4文件系统信息。
这里写图片描述

/dev/sda1挂载在/boot引导分区,/boot分区默认128字节。

有关inode的小结

  1. 磁盘分区格式化ext4文件系统后会生成一定数量的inode与block。

  2. inode是索引节点,作用是存放文件的属性信息以及作为文件的索引(指向文件的实体)。

  3. ext3/etx4文件系统的block存放的是文件的实际内容。

  4. inode是一块存储空间,CentOS6非启动分区inode默认大小256字节,CentOS5是128字节。

  5. inode是一串数字,不同的文件对应的inode在文件系统中是唯一的。
    这里写图片描述

  6. inode相同的文件,互为硬链接文件(文件又一个入口)。

  7. 一个文件被创建后至少要占用一个inode和一个block。

  8. block的大小一般有1K,2K,4K几种。其中引导分区等为1K,其他普通分区为4K(CentOS6)。
    这里写图片描述

  9. 如果一个文件很大,可能占多个block,如果文件很小,至少占一个,并且剩余空间不能被其他的文件使用。

  10. inode总量和大小查看。
    这里写图片描述
    inode count也就代表能建多少个文件。

  11. 查看inode的总量和使用量命令df -i
    df -i 查看挂载的磁盘的inode情况:
    这里写图片描述

  12. 如何生成及指定inode大小mkfs.ext4 -b 2048 -l 256 /dev/sdb

有关block的小结

  1. 磁盘读取数据是按block为单位读取的。

  2. 一个文件可能占用多个block。每读取一个block就会消耗一次磁盘I/O。

  3. 如果要提升磁盘IO性能,那么就要尽可能一次性读取数据尽量的多。

  4. 一个block只能存放一个文件的内容,无论内容有多小。如果block 4K,那么存放1K的文件,剩余3K就浪费了。

  5. block并非越大越好。block太大对于小文件存放就会浪费磁盘空间,例如:1000K的文件,block为4K,占用250个block,block为1K,占1000个block。

  6. 大文件(大于16K)一般设置block大一点,小文件(小于1K)一般设置block小一点。

  7. block太大例如4K,文件都是0.1K的,大量浪费磁盘空间。

  8. block太小例如1K,文件都是1000K,消耗磁盘IO。

  9. block的设置也是格式化分区时候,mkfs.ext4 -b 2048 -l 256 /dev/sdb。

  10. 文件较大时,block设置大一些会提升磁盘仿效效率。

  11. ext3/ext4文件一般设置为4K。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值