Omnimount· Guides ES

Recover data from a corrupted ext4 drive on a Mac

Updated November 2026 · power loss, unclean shutdowns, dirty journals, NAS disks

Your ext4 drive came from a machine that lost power, crashed, or was yanked out without unmounting. Now a Mac is the only computer at hand, and it either shows nothing or an "disk not readable" alert. The data is almost certainly fine — ext4 is a journaling filesystem built exactly for this. What's missing is the one recovery step macOS tools skip. Here's the whole process.

Why it won't mount: the dirty journal

When a filesystem is interrupted mid-write, ext4 marks itself "not cleanly unmounted". A clean mount is refused until the journal is replayed — the log of pending writes is applied so the filesystem is consistent again. On Linux this happens automatically at mount time. The read-only ext4 tools people usually reach for on a Mac (ext4fuse, or a plain FUSE mount) don't replay the journal, so they fail with errors like:

cannot read block bitmap
ext4 recovery flag is set, the fs needs to be run through e2fsck
superblock last mount time is in the future

That's not a dying disk — it's a filesystem asking to be checked before it's trusted.

Step 1: connect the drive, touch nothing

Put the disk in a USB enclosure or dock and plug it in. When macOS offers to Initialize or Erase, always choose Ignore. Never let Disk Utility "repair" or format it — those act on the whole device and can overwrite the very data you want back.

Step 2: run a filesystem check (the step that fixes it)

The fix is e2fsck, the ext4 checker. Run it against the partition (not the whole disk) to replay the journal and repair inconsistencies:

# unmount any auto-mount first, then check the partition
sudo e2fsck -fy /dev/diskXsY

-f forces a full check even if the flag looks clean; -y answers yes to the repairs. When the drive is physically healthy this is quick and safe, and the partition mounts normally afterwards. If you're unsure which diskXsY is yours, diskutil list shows every partition and its type.

Step 3: mount read-only and copy your files off

Once the check passes, mount the partition read-only and copy what matters — you're rescuing, not editing. Linux home folders live in /home/<name>. A privileged mount shows every user's files regardless of Linux permissions.

If the disk itself is failing

Clicking, random disconnects, copies that stall at the same byte every time: stop copying file by file. Clone the whole drive to an image in one sequential pass — the gentlest thing you can do to a dying disk — then run the check and the recovery against the image, never the original.

NAS and server disks have an extra wrinkle

ext4 volumes from OpenMediaVault, Synology-on-md, or a home server often enable internal quotas or features a basic FUSE mount chokes on. The symptom is a mount that fails even after a clean check. Reading a NAS drive on a Mac covers that case in full.

Skip the terminal. Omnimount does every step above automatically: it detects the dirty journal, runs the check, repairs the quota features NAS disks use, and mounts ext4 and NTFS read/write from the menu bar — no kernel extensions, no Recovery Mode, no password prompts.

Get Omnimount — €9.99 or build it free (GPL)