补充说明
mkfs.ext2 实际对应的命令是 mkfs.ext2,它是 mke2fs 的符号链接,属于 e2fsprogs 套件。ext2 是第二代扩展文件系统,没有日志(journal),因此崩溃后需要完整的 fsck 检查。
因为没有日志写入,ext2 常用于 U 盘、SD 卡等闪存介质以减少写入放大,也常见于很小的 /boot 分区或嵌入式系统。现代内核可以直接挂载 ext2,ext4 驱动也能以 ext2 兼容方式挂载。
格式化会彻底破坏分区上的原有数据,执行前必须确认设备名并卸载分区。默认参数(inode 比例、块大小、特性集)来自 /etc/mke2fs.conf,批量部署时建议显式指定关键参数。
语法
mkfs.ext2 [选项] 设备 [块数]
选项
-b 块大小:设置块大小,常用 1024/2048/4096-L 标签:设置卷标,最多 16 个字符-m 百分比:为 root 保留的块比例,默认 5%-N 数量:指定 inode 总数-I 大小:指定 inode 大小(字节)-O 特性:启用或关闭特性,前缀^表示关闭-F:强制在非块设备或已有文件系统上创建-q:安静模式,只输出错误-n:只显示将要执行的操作,不真正写入-c:创建前检查坏块-d 目录:用目录内容预填充文件系统-E 选项:扩展选项,如lazy_itable_init、discard-U UUID:指定文件系统 UUID-T 用途:按用途套用参数,如small、default、news
实例
# 在分区上创建 ext2 并设置卷标
sudo mkfs.ext2 -L boot /dev/sdb1
# 关闭 root 保留块,适合纯数据盘
sudo mkfs.ext2 -m 0 /dev/sdb1
# 在普通文件上创建 64MB 的 ext2 镜像
mkfs.ext2 -F disk.img 64M
# 先演练,确认参数无误再真正执行
mkfs.ext2 -n /dev/sdb1
# 查看生成结果
sudo dumpe2fs -h /dev/sdb1
注意事项
- ext2 没有日志,异常断电后可能丢失大量元数据,重要数据盘应选 ext4。
- 在闪存上关闭日志可延长寿命,但仍需关注写入次数与磨损均衡。
- 卷标不要使用中文和空格,部分引导器与工具识别不良。