- 作者: 陈孝松
- 主页: chenxiaosong.com
- 哔哩哔哩教学视频: 陈孝松
- 课程: chenxiaosong.com/courses
- 博客: chenxiaosong.com/blog
- 贡献: chenxiaosong.com/contributions
- 邮箱: chenxiaosong@chenxiaosong.com
- QQ交流群: 544216206, 点击查看群介绍
一般的Linux书籍都是先讲解进程和内存相关的知识,但我想先讲解文件系统。
第一,因为我就是做文件系统的,更擅长这一块,其他模块的内容我还要再去好好看看书,毕竟不能误人子弟嘛;第二,是
因为文件系统模块更接近于用户态,是相对比较好理解的内容(当然想深入还是要下大功夫的),由文件系统入手比较适合初学者。
英文全称Extended file system,翻译为扩展文件系统。Linux内核最开始用的是minix文件系统,直到1992年4月,Rémy Card开发了ext文件系统,采用Unix文件系统(UFS)的元数据结构,在linux内核0.96c版中引入。设计上参考了BSD的快速文件系统(Fast File System,简称FFS)。1993年1月0.99版本中ext2合入内核, 2001年11月2.4.15版本中ext3合入内核,2006年10月10日2.6.19版本中ext4合入内核。
相关文档网站:
最后再介绍几个ext文件系统相关的用户态工具:
mke2fs
: 用于建立ext2文件系统,ext2文件系统直接使用mkfs.ext2
(相当于mke2fs -t 2
),ext4直接使用mkfs.ext4
。具体用法查看man 8 mke2fs
。e2fsck
: 用于检查使用 ext2 文件系统的 partition 是否正常工作,对于ext2文件系统可以直接使用fsck.ext2
命令,ext4直接使用fsck.ext4
。具体用法查看man 8 e2fsck
。debugfs
: ext2/ext3/ext4文件系统调试器,具体用法查看man 8 debugfs
。dumpe2fs
: 显示ext2、ext3、ext4文件系统的超级快和块组信息,具体用法查看man 8 dumpe2fs
。tune2fs
: 用于管理文件系统参数,具体用法查看man 8 tune2fs
。e2image
: 将关键的 ext2/ext3/ext4 文件系统元数据保存到文件中,具体用法查看man 8 e2image
。e2image device image-file
: 保存元数据,查看超级快和块组信息使用debugfs -i image-file
和dumpe2fs -i image-file
。e2image -I device image-file
: 恢复。
dump
: 备份ext2/3/4文件系统,安装apt install dump -y
。