设为首页收藏本站
天天打卡

 找回密码
 立即注册
搜索
查看: 94|回复: 12

Linux标准的文件系统知识分享(Ext2/Ext3/Ext4)

[复制链接]

13

主题

31

回帖

335

积分

中级会员

积分
335

推广达人宣传达人热心会员付费会员

发表于 2024-4-20 10:28:20 | 显示全部楼层 |阅读模式
Ext
全称Linux extended file system, extfs,即Linux扩展文件系统,Ext2就代表第二代文件扩展系统,Ext3/Ext4以此类推,它们都是Ext2的升级版,只不过增加了日志功能,且彼此向下兼容,所以Ext2被称为索引式文件系统,而Ext3/Ext4被称为日志式文件系统。
备注:Linux支持很多文件系统,包括网络文件系统(NFS)、Windows的Fat文件系统。
查看Linux支持的文件系统:
  1. ls -l /lib/modules/$(uname -r)/kernel/fs
复制代码

查看Linux支持的文件系统(已载入到内存中):
  1. cat /proc/filesystems
复制代码

核心设计
数据区
这些元素相对稳定,磁盘格式化后,就固定下来了。
1、inode(索引节点)
记录文件的权限、属性和数据所在块block的号码,每个文件都有且仅有一个的inode,每个inode都有自己的编号,可以把inode简单地理解为文档索引。
2、block(数据区块)
存储的文件内容,也叫数据区块(data block),每个block都有自己的编号,Ext2支持的单位block容量仅为1k、2k、4k。
  1. 备注:为了方便inode的记录,在磁盘格式化后,block的大小都已经固定了。每一个块只能存放一个文件的数据,若文件太大,将占用多个block;若文件太小,block剩余空间就不能被使用了,就会导致磁盘空间浪费,所以在磁盘分区后,文件系统格式化前,请先仔细想想文件系统的预计使用情况。
  2.  
复制代码
中介数据(metadata)
这些元素是为了维持文件系统状态而设计出来的,主要代表的是文件系统的动态配置信息,属于描述性信息。
1、superblock(超级块)
记录文件系统(filesystem)的整体信息,包括inode/block的总量、使用量、剩余量、大小、以及文件系统的格式和相关信息。
  1. 备注:整个文件系统的基本信息全部记录在superblock,它的大小一般为1024Bytes,如果它死掉,将会花费大量的时间去补救哦!!!
复制代码
2、block group(区块群组)
试想一下,假如我们的磁盘容量高达数百G,当我们格式后,inode和block会非常庞大,为了便于管理,Ext文件系统在格式化时,引入了区块群组(block group)的概念,每个区块群组都保持独立inode/block/superblock,拥有固定数量的block,这样就分成了一群一群最基础的子文件系统。
  1. 备注:superblock对于文件系统太重要了,但是文件系统的superblock又只有一个,所以除了第一个block group含有superblock外,后续block group都可能会含有备份的superblock,目的就是为了避免superblock单点无法救援的问题。
复制代码
3、block bitmap(区块对照表)
一个block只能被一个文件使用,当我们新增文件时,肯定需要使用新的block来记录文件数据。那么如何快速地知道,哪些block是新的?哪些block是已经使用了的?block bitmap就是这样被设计出来,记录所有使用和未使用的block号码。同样的,当我们删除文件时,先从block bitmap中找到对应的block号码,然后更新标志为未使用,最后释放block。
inode bitmap(inode 对照表)
和block bitmap一样的设计理念,只不过它记录地是已使用和未使用的inode号码,这里就不再敖述了。
group descriptor
描述每个区段(block group)开始和结束的block号码,以及说明每个区段(inodemap、blockmap、inode table)分别介于哪些block号码之间。
列出目前系统所有被格式化的设备:
  1. blkid
复制代码

挑选一个已格式化好的设备,查看文件系统的详细信息:
  1. dumpe2fs /dev/vda1
复制代码

  1. 备注:通过上面的Magic签名为0xEF53,说明我们的磁盘分区是一个的ext2和ext3文件系统。类似于通过文件开头的Magic,可以判断文件类型一样。
复制代码
总结
Ext家族是Linux支持度最广、最完整的文件系统,当我们格式化磁盘后,就已经为我们规划好了所有的inode/block/metadate等数据,这样系统可以直接使用,不需要再进行动态的配置,这也是它最优秀的特点,不过这也是它最显著的缺点,磁盘容量越大,格式化越慢,centos7.x已经选用xfs作为默认文件系统。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
  • 打卡等级:无名新人
  • 打卡总天数:2
  • 打卡月天数:0
  • 打卡总奖励:24
  • 最近打卡:2024-08-26 11:29:02

2

主题

57

回帖

183

积分

注册会员

积分
183
发表于 2024-4-22 14:25:38 | 显示全部楼层
保持尊重和礼貌对待其他成员是必要的。

2

主题

54

回帖

172

积分

注册会员

积分
172
发表于 2024-5-1 17:31:09 | 显示全部楼层
太棒了!感谢分享这个信息!

1

主题

57

回帖

135

积分

注册会员

积分
135
发表于 2024-5-18 16:21:15 | 显示全部楼层
这个话题真是有趣,我也对它感兴趣。
  • 打卡等级:无名新人
  • 打卡总天数:1
  • 打卡月天数:0
  • 打卡总奖励:20
  • 最近打卡:2024-04-19 21:31:53

1

主题

46

回帖

138

积分

注册会员

积分
138
发表于 2024-7-8 17:13:11 | 显示全部楼层
你的信息来源是?我想了解更多。

0

主题

40

回帖

79

积分

注册会员

积分
79
发表于 2024-7-25 00:49:49 | 显示全部楼层
让我们一起努力

1

主题

46

回帖

113

积分

注册会员

积分
113
发表于 2024-7-26 14:58:52 | 显示全部楼层
让我们一起努力

4

主题

44

回帖

178

积分

注册会员

积分
178
发表于 2024-7-28 18:02:50 | 显示全部楼层
让我们一起努力

0

主题

35

回帖

67

积分

注册会员

积分
67
发表于 2024-8-20 11:56:36 | 显示全部楼层
看了LZ的帖子,我只想说一句很好很强大!

1

主题

58

回帖

140

积分

注册会员

积分
140
发表于 2024-8-24 14:13:07 | 显示全部楼层
嘎嘎嘎嘎嘎嘎嘎
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|爱云论坛 - d.taiji888.cn - 技术学习 免费资源分享 ( 蜀ICP备2022010826号 )|天天打卡

GMT+8, 2024-11-15 11:28 , Processed in 0.087428 second(s), 28 queries .

Powered by i云网络 Licensed

© 2023-2028 正版授权

快速回复 返回顶部 返回列表