§ 0x00 为什么学习ext2
这个文件系统是当初生产级别的;
实现最为简单。
与现代文件系统相比的缺点:
无事务;
不感知固态硬盘。
0x01 制作一个虚拟磁盘
通过dd命令实现。
dd if=/dev/zero of=ext2.img count=1024000 bs=1024
0x02 创建文件系统
因为我们使用的是虚拟磁盘,所以可以直接对镜像文件执行文件系统创建动作。mkfs.ext2来自工具集e2fsprogs。
$ mkfs.ext2 ext2.img
mke2fs 1.44.1 (24-Mar-2018) // 工具的版本
Discarding device blocks: 4096/256000 // 丢弃不用的block数量。?
done
Creating filesystem with 256000 4k blocks and 64000 inodes // 开始创建文件系统,输出将要生成的blocks数量和inode数量。
Filesystem UUID: e6ae7d79-7cf3-42cc-802d-4158253beb85 // UUID
Superblock backups stored on blocks: // 输出sb的备份块位置,这是块组的奇数块组。
32768, 98304, 163840, 229376
Allocating group tables: done
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
<