Linux ext2文件系统
Linux最传统的磁盘文件系统(filesystem)使用的是ext2
1.ext2文件系统结构
ext2文件系统划分为多个块组,每个块组拥有独立的inode/block,一个文件系统只有一个Superblock。
如下图所示:

1)Boot Sector:启动扇区。
启动扇区可以安装引导装载程序,这样可以将不同的引导装载程序安装到不同的文件系统,
不用覆盖整块硬盘唯一的MBR,才能制作出多重引导的环境。
2)Data Block:存放文件内容。
ext2系统中block的大小有1KB,2KB,4KB三种,block大小由文件系统总容量决定,如下图所示:

每个block只能放一个文件的数据,若文件大小超过block,则占用多个;
若小于block,block剩余的空间也不能被其他文件使用。
3)Inode Table:存放文件属性和权限等。
inode存放的文件数据至少有:
文件的访问权限(rwx)
文件的所有者与组(ower/group)
文件的大小
文件创建和状态改变时间
最近一次读的时间
最近修改的时间
文件类型标识
文件指向的block号
inode的大小固定为128B
我们重点看一下最后一项,“文件指向的block号”
inode是通过12个直接指针,1个间接指针,1个双间接指针,1个三间接指针来指向block的。
如下所示:

12个直接指针:直接取得block号码
如果文件太大,就会使用间接指针,双间接指针,三间接指针来记录编号
4)Superblock:存放文件系统的基本信息。
一个文件系统只有一个Superblock,存放的信息有:
inode,block的总量
未使用和已使用的inode,block数量
inode,block的大小
文件系统挂载时间,最近写入数据时间,最近检查磁盘时间
validbit值,文件系统已挂载,则validbit为0,否则为1
5)File system Description(文件系统描述):每个块组的开始结束号码
6)block bitmap(block对照表):标识block是否使用
便于系统快速找到空间来处置文件
7)inode bitmap(inode对照表):标识inode是否使用
与block bitmap相似。
2.文件系统树型结构之间的关系
1)目录
新建一个目录时,ext2会分配一个inode和至少一块block给该目录。
inode记录目录权限和属性,以及分配的block号。
block记录目录下的文件名和文件名占用的inode号。
2)文件
新建一个文件时,ext2会分配一个inode和对应文件大小的N个block块给该文件。
inode和文件名会同时被记录在目录的block中,以便通过目录访问到该文件。
block存放文件内容。
3)文件查找
查找文件时,会先找到文件所在目录,目录的inode对应的block中,
存放着文件的名称和inode,找到文件名对应的inode,
然后找到文件inode对应的block,找到文件内容。
3.ext3文件系统
ext3是ext2的升级,加入了日志文件系统。
4.挂载文件系统
文件系统要挂载到目录树,才能使用。
文件系统与目录树结合的操作,称为挂载。
挂载点是目录,该目录为进入该文件系统的入口。
Linux ext2文件系统的更多相关文章
- linux ext2 文件系统学习
Linux ext2文件系统理解 硬盘组成: 硬盘由多个圆形硬盘片组成.按照硬盘片能够容纳的数据量分为单盘和多盘.硬盘的数据读取主要靠机械手臂上的磁头,在机械手臂上有多个磁头.机械手臂不动硬盘旋转一 ...
- Linux ext2文件系统之初步思考
数据存放在磁盘中,磁盘最小存取单位sector(512Byte);文件系统中存储的最小单位是 块(Block),大小通常(1KB,2KB,4KB...), 一个block对应多个sector,因而可用 ...
- Linux EXT2 文件系统
磁盘是用来储文件的,但是必须先把磁盘格式化为某种格式的文件系统,才能存储文件.文件系统的目的就是组织和管理磁盘中的文件.在 Linux 系统中,最长见的是 ext2 系列的文件系统.其早期版本为 ex ...
- Linux 下EXT2文件系统 —— 如何将蚂蚁和大象优雅的装进冰箱里
这一阵子真是偷懒,无时无刻不和自己身体中的懒癌做斗争.最终我还是被打败了,星期天两天几乎都是荒废过去的,在空闲的时候实际上我内心也是有点焦虑的,不知道去怎么度过这时间.学习吧又不想学习,看电视娱乐吧也 ...
- Linux ext2/ext3文件系统详解
转载: Linux ext2/ext3文件系统使用索引节点来记录文件信息,作用像windows的文件分配表.索引节点是一个结构,它包含了一个文件的长度.创建及修改时间.权限.所属关系.磁盘中的位置等信 ...
- 文件系统的特性,linux的EXT2文件系统【转】
本文转载自:https://blog.csdn.net/tongyijia/article/details/52809281 先来提出三个概念: - superblock - inode - bloc ...
- Linux中ext2文件系统的结构
1.ext2产生的历史 最早的Linux内核是从MINIX系统过渡发展而来的.Linux最早的文件系统就是MINIX文件系统.MINIX文件系统几乎到处都是bug,采用的是16bit偏移量,最大容量为 ...
- Linux磁盘管理——Ext2文件系统
前言 通常而言,对于一块新磁盘我们不是直接使用,而是先分区,分区完毕后格式化,格式化后OS才能使用这个文件系统.分区可能会涉及到MBR和GPT问题.至于格式化和文件系统又有什么关系? 这里的格式化指的 ...
- Linux 文件系统及 ext2 文件系统
linux 支持的文件系统类型 Ext2: 有点像 UNIX 文件系统.有 blocks,inodes,directories 的概念. Ext3: Ext2 的加强版,添加了日志 ...
随机推荐
- IIS6的session丢失问题
解决办法: a IIS6中相比IIS5增加了一个应用程序池,默认是使用DefaultAppPool. b 先为站点建立一个应用程序池,打开IIS管理器,右键点击应用程序池-新建 ...
- ajax注释
//xmlHttpRequest,但是这个对象只是在火狐,google...//在中国用的最广泛的IE浏览器里面是没有这个对象的//在IE里面是用的一个控件来解决这个问题,ActiveXObject/ ...
- 深入学习:如何实现不同Android设备之间相同应用程序的网络服务发现功能
在我们的app中添加网络服务发现功能(NSD)以方便在不同的设备上响应局域网中的请求.这种功能对于多设备之间点对点服务来说很有用,例如多人游戏,多人通话,文件共享等. 一,在网络中注册你的服务 注意: ...
- 爆破vcrkme01(已补上注册机)
系统 : Windows xp 程序 : vcrkme01 程序下载地址 :http://pan.baidu.com/s/1mh1n33y 要求 : 爆破 使用工具 :OD 可在“PEDIY Crac ...
- 求助 WPF ListViewItem样式问题
求助 WPF ListViewItem样式问题 .NET 开发 > Windows Presentation Foundation Вопрос 0 Нужно войти <Style ...
- 第三个Sprint冲刺第二天 最终篇
一.例会人员:李泳江,邵家文,周伟雄,谢洪跃 日期:6月21号 例会内容: 1.完成表格任务 编号 名称 时间 已用时间 是否完成 1 画出算法流程图 4小时 4小时 完成 2 界面设计 5小时 ...
- jsb里出现的 Invalid Native Object的一次bug修复的思考
Cocos2d: jsb: ERROR: File /Users/dcx_JD/Documents/cocos2d-x-2.2.2/scripting/javascript/bindings/gene ...
- Flume NG之Interceptor简介
转载地址:http://www.cnblogs.com/lxf20061900/p/3658172.html 有的时候希望通过Flume将读取的文件再细分存储,比如讲source的数据按照业务类型分开 ...
- USB相关的网络资料
相关资源连接: USB官网:http://www.usb.org/home <USB in a NutShell>: http://www.beyondlogic.org/usbnutsh ...
- C++ STL库之vector
vector直译有"容器"之意,我们可以把它理解成是一个不限长度的数组. 我们可以通过代码进一步理解vector. 示例代码如下: #include <stdio.h> ...