inode 与 block

iNode:索引节点(index node)

iNode是用来存储数据属性信息的,iNode包含的属性包括:
文件大小
属组
归属的用户组
读写权限
文件类型
修改时间
指向文件实体的指针功能(iNode节点和block的对应关系)
但是,iNode不包括文件名 inode  与   block

iNode小结:

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

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

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

  4. Block的大小一般有1k,2k,4k,其中引导分区为1k,其他分区为4k

  5. inode是一块磁盘存储空间,centos6非启动分区iNode默认大小256字节,centos5是128字节

  6. iNode是一串数字,不同的文件对应的iNode在文件系统里是唯一的。

  7. iNode号相同的文件,互为硬链接文件(硬链接就是文件的又一个入口)

  8. 一个文件被创建后至少要占用一个iNode和一个block

  9. 如果一个文件很大,可能占多个block

  10. 如果文件很小,也要至少占一个block,并且剩余空间不可以使用,浪费了

  11. iNode大小和总量查看:

    dumpe2fs /dev/sda3|egrep -i “block size|inode size”

    dumpe2fs /dev/sda3|egrep -i “block count |inode count”

  12. 查看iNode的总量和使用量命令df -i

  13. 生成和指定iNode大小,mkfs.ext4 -b 2048 -I 256 /dev/sdb

block

Block 小结:

Block 是用来存储实际数据的。

理解:可以把iNode理解为一本书的目录,block理解为书的每一页。

  1. 磁盘读取数据是按block为单位读取的。
  2. 一个文件可能占多个block,每读取一个block就会消耗一次磁盘I/O
  3. 如果要提升磁盘I/O性能,那么就要尽可能一次读取数据多。
  4. 一个block只能存放一个文件的内容,无论内容有多小,如果block为4K,那么存放1k的文件,剩余的就浪费了。
  5. Block并非越大越好,block太大对于小文件存放就会浪费磁盘空间,
  6. 大文件(大于16K)一般设置block大一点,小文件(小于1k)一般设置小一点。
  7. Block太大例如4K,文件都是0.1k,太浪费磁盘空间。
  8. Block太大例如1k,文件都是1000K,消耗磁盘IO
  9. 文件较大时,block设置大点会提升磁盘访问效率
  10. ext3/ext4文件一般设置成4k.

原创文章,作者:zhaobenshan,如若转载,请注明出处:http://www.178linux.com/81685

(0)
上一篇 2017-07-18 12:44
下一篇 2017-07-18 17:39

相关推荐

  • 初至马哥教育

    linux面授班30期

    2018-03-26
  • RAID有点意思

        独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),简称磁盘阵列。其基本思想就是把多个相对…

    Linux干货 2017-06-19
  • vim编译器与shell脚本简介

    一、vim文本编译器       vi:Visual Interface,文本编辑器;   文本: ASCII Unicode  文本编辑种类:行编辑器:sed  ;全屏编辑器:nano,vi ,vim ;其他编辑器:gedit(图形),g…

    Linux干货 2016-11-24
  • linux上的文本三剑客之grep和文本查看工具

    linux上文本处理三剑客 grep,egrep,fgrep:文本过滤工具(模式:pattern)工具:     grep:基本正则表达式,-E:支持扩展正则表达式,-F:不支持正则表达式     egrep:扩展正则表达式,-G:支持基本正则表达式 ,-F:不支持正则表达式 &…

    Linux干货 2016-08-07
  • 第一周:Linux基础之常用命令(二)

    一、Linux的命令使用格式 命令的语法通用格式: ~]# COMMAND  OPTIONS  ARGUMENTS   命令  选项  参数 1.  COMMAND,命令:发起命令时将请求内核将某个二进制程序运行为一个进程,命令本身是一个可执行的程序文件,二进制格式的文件有可能会调用共享库文件。 多…

    Linux干货 2016-09-18
  • openssl总结及私有CA的搭建

    一、前言 什么是openssl?讲openssl之前我们先了解一下什么是ssl?ssl是secure socket layer的简称,其使用对称加密,非对称加密(公钥加密解密),单向加密解密结合证书实现数据传输安全,openssl默认是在系统安装时就已经安装上去的。随着互联网的迅速发展,网络通信已经成为传递信息的主要途径。而通信时的数据传输大部分都是明文传输…

    Linux干货 2016-01-05

评论列表(1条)

  • asd
    asd 2018-03-16 18:21

    文件的inode与block对应关系有命令查看吗?