需先卸载磁盘再用fsck修复:执行diskutil list确认设备标识,diskutil unmountdisk卸载;apfs用sudo fsck_apfs -y -s,hfs+用sudo fsck_hfs -fy;exfat/fat32需换windows修复;修复后检查输出是否含“was modified”,再挂载验证。

Mac终端修复因意外断电导致的磁盘错误,需先确认磁盘是否已卸载、再用底层工具强制校验元数据,避免在挂载状态下运行fsck引发二次损坏。
确认磁盘设备标识并卸载
打开终端,输入 diskutil list 回车,从输出中找到对应外接磁盘(如 disk2)及其分区(如 disk2s1),注意看 TYPE NAME 是否为 “Microsoft Basic Data” 或 “Apple_HFS” 等;若该分区状态显示为 “mounted”,必须先卸载——执行 diskutil unmountDisk /dev/disk2(替换为你的实际磁盘号),否则后续修复命令会直接报错退出。
这一步不能跳过。强行对已挂载磁盘运行 fsck_hfs 或 fsck_apfs 可能造成文件系统索引错乱,甚至丢失整个分区。
根据文件系统类型选择修复命令
方法一:针对 macOS 原生格式(APFS 或 HFS+)
若磁盘是 Mac 自己格式化的(格式显示为 APFS 或 macOS 扩展),先判断宗卷层级:执行 diskutil apfs list 查看是否属于 APFS 容器;若是,用 sudo fsck_apfs -y -S /dev/disk2s1(将 disk2s1 替换为你的分区标识);若为旧式 HFS+,则改用 sudo fsck_hfs -fy /dev/disk2s1。
方法二:针对 exFAT/FAT32 格式(常见于跨平台移动硬盘)
这类格式不支持 macOS 原生命令深度修复,只能尝试重新挂载:先执行 sudo diskutil mount /dev/disk2s1,若提示 “Volume on disk2s1 timed out waiting to mount”,说明文件系统结构已受损,此时终端无可靠修复手段,需换 Windows 用 chkdsk /f 或格式化前用专业工具抢救数据。
验证修复结果并重新挂载
第一步:等待 fsck 命令执行完成,观察终端最后一行输出——若出现 ** The volume was modified ** 或 repaired volume header,说明修复成功;若显示 Invalid node structure 或反复报错 49153,则大概率存在物理坏道或日志区不可逆损坏。
第二步:执行 sudo diskutil mount /dev/disk2s1 尝试重新挂载;若仍失败,说明元数据未完全恢复,需进入恢复模式用图形化“磁盘工具”再次急救,或考虑用 diskutil enableJournal /dev/disk2s1(仅限 HFS+)重建日志功能。
第三步:挂载成功后,立即打开访达检查关键文件能否正常打开,不要急于写入新数据——刚修复的磁盘可能仍有隐藏结构缺陷,建议优先备份重要资料。











