磁盘的物理组成:

  • 扇区为最小的物理存储单位,每个扇区为512字节。
  • 将扇区组成一个圆,那就是柱面,柱面是分区的最小单位。
  • 第一个扇区很重要,里面有硬盘主引导记录(Masterbootrecord,MBR)及分区表,其中MBR占有446字节,分区表占有64字节。
  • 各种接口的磁盘在Linux中的文件名,①/dev/sd[a-p][1-15]:为SCSI,SATA,USB,Flash等接口的磁盘文件名;②/dev/hd[a-d][1-63]:为IDE接口的磁盘文件名。

磁盘分区:

磁盘分区是告诉操作系统“我这块磁盘在此分区可以访问的区域是A柱面到B柱面之间的块”,这样操作系统就知道它可以在所指定的快内进行文件数据的读、写、查找等操作。磁盘分区即指定分区的起始与结束柱面。
而指定分区的柱面范围记录在第一个扇区的分区表中。因为分区表只有64字节,所以最多只能记录4条分区的记录,这四条记录称为主分区扩展分区。扩展分区还可以再分出逻辑分区
一个磁盘可以划分成多个分区,每个分区必须先用格式化工具(如mkfs命令)格式化成某种格式的文件系统,然后才能存储文件,格式化过程中会在磁盘上写一些管理存储布局的信息。

ext2文件系统

文件系统中存储的最小单元是块(block),一个块的大小是在格式化时确定的。启动块(Boot Block)的大小为1KB,由PC标准规定,用来存储磁盘分区信息和启动信息,任何文件系统都不能使用启动块。
启动块之后才是ext2文件系统的开始,ext2文件系统将整个分区划分成若干个同样大小的块组(Block Group)。

每个块组的组成:

1)超级块(Super Block)描述整个分区的文件系统信息,如inode/block的大小、总量、使用量、剩余量,以及文件系统的格式与相关信息。超级块在每个块组的开头都有一份拷贝。
2)块组描述符表(GDT,Group Descriptor Table)由很多块组描述符组成,整个分区分成多个块组就对应有多少个块组描述符。
每个块组描述符存储一个块组的描述信息,如在这个块组中从哪里开始是inode Table,从哪里开始是Data Blocks,空闲的inode和数据块还有多少个等等。块组描述符在每个块组的开头都有一份拷贝。
3)块位图(Block Bitmap)用来描述整个块组中哪些块已用哪些块空闲。块位图本身占一个块,其中的每个bit代表本块组的一个block,这个bit为1代表该块已用,为0表示空闲可用。假设格式化时block大小为1KB,这样大小的一个块位图就可以表示1024*8个块的占用情况,因此一个块组最多可以有1024*8个块。
4)inode位图(inode Bitmap)和块位图类似,本身占一个块,其中每个bit表示一个inode是否空闲可用。
5)inode表(inode Table)由一个块组中的所有inode组成。一个文件除了数据需要存储之外,一些描述信息也需要存储,如文件类型,权限,文件大小,创建、修改、访问时间等,这些信息存在inode中而不是数据块中。inode表占多少个块在格式化时就要写入块组描述符中。
inode记录的文件数据至少有:

  • 该文件的访问模式(rwx)
  • 该文件的所有者与组(owner/group)
  • 该文件的大小
  • 该文件创建或状态改变的时间(ctime)
  • 最近一次的读取时间(atime)
  • 最近修改内容的时间(mtime)
  • 定义文件特性的标志(flag),如SetUID等
  • 该文件真正内容的指向(Pointer)

6)数据块(Data Block)是用来放置文件内容的地方。根据不同的文件类型有以下几种情况:

  • 对于普通文件,文件的数据存储在数据块中。
  • 对于目录,该目录下的所有文件名和目录名存储在所在目录的数据块中,除了文件名外,ls -l命令看到的其它信息保存在该文件的inode中。
  • 对于符合链接,如果目标路径名较短则直接保存在inode中,如果较长则分配一个数据块来保存。
  • 设备文件、FIFO和socket等特殊文件没有数据块。

数据块寻址:

一个inode占128字节,其中60个字节用于指向存放文件内容的数据块指针。每个指针4字节,那么有15个指针。最后3个指针用分级间接寻址。
假设block为1KB。

12个直接指向,可以有12条记录。
一级间接寻址:1024/4=256,可以有256条记录。
二级间接寻址,可以有256*256条记录。
三级间接寻址,可以有256*256*256条记录。
所以对于1KB的块大小最大可以表示(256^3+256^2+256+12)*1KB≈16GB的文件。

文件系统---认识ext2文件系统相关推荐

  1. Linux 文件系统及 ext2 文件系统

    linux 支持的文件系统类型 Ext2:     有点像 UNIX 文件系统.有 blocks,inodes,directories 的概念. Ext3:     Ext2 的加强版,添加了日志的功 ...

  2. Linux 文件系统之 MINIX 文件系统

    MINIX 文件系统与标准 UNIX 的文件系统基本相同,它由 6 个部分组成:①引导块:②超级块:③ i 节点位图:④逻辑块位图:⑤i 节点:⑥数据块.对于一个普通的磁盘块设备来说,其各部分的分布见 ...

  3. 查看linux说有文件系统,linux,查看文件系统

    篇一:Linux文件系统 文档标题文档模板01 文档副标题 DEV-07-001 Version 1.0 2015-03-01 文档控制页面 编写/修改 审阅 Linux 磁盘与文件系统 一.硬盘 硬 ...

  4. Linux EXT2文件系统结构分析(详情见附件)

    Linux的第一个版本是基于Minix文件系统的.当 Linux成熟时,引入了扩展文件系统(Ext FS) ,它包含了几个重要的扩展,但提供的性能不令人满意.在 1994 年引入了第二扩展文件系统(s ...

  5. ext2文件系统 - mke2fs

      上一遍博文的重点其实将ext2整体的组织框架,我们知道了ext2文件系统由块组组成,每个块组里面的组织形式.我们甚至直接把超级块和组描述符里面的内容,用十六进制形式展现了出来.这篇博文主要讲述如何 ...

  6. Linux ext2文件系统小结

    本文来源:http://learn.akae.cn/media/ch29s02.html 有修改 1.ext2文件系统整体布局 一个磁盘可以划分成多个分区,每个分区必须先用格式化工具(例如某种mkfs ...

  7. 转:ext2文件系统详解

    第一部分磁盘的物理组成 磁盘的基本概念: 扇区为最小的物理存储单位,每个扇区为512字节. 将扇区组成一个圆,那就是柱面,柱面是分区的最小单位. 第一个扇区很重要,里面有硬盘主引导记录(Masterb ...

  8. ext显示服务器文件,使用linux的fsck.ext2命令检查及修复ext2文件系统

    使用linux的fsck.ext2命令检查及修复ext2文件系统 发布时间:2020-07-18 13:40:16 来源:亿速云 阅读:138 作者:清晨 栏目:服务器 不懂使用linux的fsck. ...

  9. 深入解析ext2文件系统之mke2fs

      上一遍博文的重点其实将ext2整体的组织框架,我们知道了ext2文件系统由块组组成,每个块组里面的组织形式.我们甚至直接把超级块和组描述符里面的内容,用十六进制形式展现了出来.这篇博文主要讲述如何 ...

最新文章

  1. mac升级之后safari打不开网页,怎么办?
  2. wdpc配置https打不开
  3. PowerDesigner 反向工程生成ER图
  4. XElement 和 XDocument 到底有什么区别?
  5. 微软开发者的年度回顾
  6. 3d目标检测_CVPR 2020 |基用于3D目标检测的层级图网络
  7. 交换机配置工具_二层网管交换机应用—环路检测
  8. windowswps怎么以文件形式发送_wps怎么以文件形式分享
  9. Python计算斐波那契数列
  10. APUE读书笔记-08进程控制(08)
  11. 计算机应用基础五笔试题,2016全新计算机应用基础试题及答案
  12. VC MakeUp 操作XML
  13. 零基础学习Java的路线,学完上岸BAT!
  14. OPENCV运动追踪研究和PYTHON及JAVA实现
  15. webApp用户体验优化——quickClick
  16. STM32并口驱动AD9854——HAL库
  17. LeetCode455分发饼干
  18. 购物车模块redis和mysql_redis解决购物车的问题
  19. JavaFX学习之道:布局面板之 HBox
  20. Java高并发系列5-线程池

热门文章

  1. 平面向量及空间向量间角度的计算
  2. Python标准库shutil的使用( 文件复制删除、文件夹复制删除、压缩包 压缩解压处理模块)
  3. IIS配置.net core出现的错误代码(0x80070005、0x8007000d、IIS Error 502.5)的解决办法
  4. 脑袋里是什么?HTML中的元数据
  5. mysql配置服务器失败怎么办_安装程序配置服务器失败怎么办?数据库配置失败的解决方法...
  6. U盘强制拔出丢失数据的恢复方法(U盘写保护的四种解决方法)
  7. 皕杰报表工具中如何展示图片
  8. 韩公开日机抵近军舰照片 韩媒:欲基于事实化解争议
  9. 微信打开网页竟然走微信自己的DNS
  10. 【数据结构】TopK问题