在 Linux 里面有一个 e2fsck 的指令,可以检查及修复档案系统。它的参数包括有:
-a: 检查 partition,如发现问题会自动修复。
-b: 设定 superblock 位置。
-B size: 指定 size 作为区块大小。
-c: 检查 partition 是否有坏轨。
-C file: 将检查结果储存到 file。
-d: 输出 e2fsck debug 结果。
-f: e2fsck 预设只会对错误的档案系统检查,加上 -f 是强制检查。
-F: 在检查前将硬盘的 buffer cache 清空,避免发生错误。
-l list: 记录了坏轨区块加入 list 中。
-d : 打印 e2fsck 的 debug 结果。
-f : 强制检查。
-n: 以 (read-only) 开启档案系统
-p: 关闭互动模式,如有问题自动修复,等同 -a。
-v: 显示详细报告。
-y: 启用使用者互动模式。
使用例子
检查 /dev/sda1 是否有问题,如发现问题便自动修复:
e2fsck -a -y /dev/sda1
执行 e2fsck 或 fsck 前请先 umount partition,否则有机会令档案系统毁损。如果需要对根目录 (/) 进行检查及修复,便需要进入 singal user mode 执行。