e2fsck
是 Linux 系统中用于检查和修复 ext2/ext3/ext4 文件系统(最常见的 Linux 文件系统类型)的重要工具。以下是详细解释:
名称来源
e2fsck
= ext2 filesystem check(虽然也支持 ext3/ext4)。
功能
典型场景
sudo e2fsck [选项] 设备名
常用选项:
- -p
:自动修复错误(无需交互)。
- -y
:对所有问题回答“yes”(强制修复)。
- -n
:仅检查,不修改文件系统。
- -c
:检查坏块(需额外时间)。
- -f
:强制检查(即使文件系统看起来正常)。
示例:
sudo e2fsck -p /dev/sda1 # 自动修复/dev/sda1分区
sudo e2fsck -fy /dev/sdb2 # 强制检查并修复/dev/sdb2
卸载文件系统
必须先卸载分区(或进入救援模式),否则可能导致数据损坏:
sudo umount /dev/sda1
替代工具
fsck
:通用文件系统检查工具,实际会根据文件系统类型调用 e2fsck
(ext系列)或其他工具(如 xfs_repair
用于 XFS)。tune2fs
:调整 ext 文件系统参数(如强制下次启动时检查)。风险提示
Q: 为什么运行 e2fsck
时提示“文件系统已挂载”?
A: 必须先在卸载分区或使用 -n
选项只读检查。
Q: 如何设置开机自动检查?
A: 使用 tune2fs -c 30 /dev/sda1
(每 30 次挂载后检查)或通过 /etc/fstab
的 pass
字段控制。
通过合理使用 e2fsck
,可以有效维护 ext 系列文件系统的健康性。如需更高级恢复,可结合 debugfs
工具。