Why does my exFAT drive show missing/empty folders or “Invalid argument” on macOS when all files are visible in Windows?
SOLVED — posting this because the problem was extremely difficult to diagnose and could easily make someone believe their data is corrupted or missing.
SYSTEM:
M1 MacBook Pro
macOS 26.0.2
24 TB exFAT external drive
THE PROBLEM
Windows could see the entire 24 TB exFAT drive normally and open/play the files.
macOS also mounted the drive successfully, but some folders appeared empty and other large directories showed only part of their contents.
For example, Music appeared essentially empty on the Mac even though Windows showed the complete library.
More importantly, some directories failed even from Terminal:
ls -la "/Volumes/24TB - B/MAC TEST/A-Ha"
returned:
ls: /Volumes/24TB - B/MAC TEST/A-Ha: Invalid argument
That test folder had been newly created in Windows. Windows could read it normally.
Disk Utility First Aid/fsck_exfat reported:
The volume 24TB - B appears to be OK.
File system check exit code is 0.
Operation successful.
Updating macOS did not fix it.
THE TEST
I wanted to determine whether the problem was the filesystem/data itself or Apple's exFAT implementation.
I installed macFUSE:
brew install --cask macfuse
On Apple Silicon, macFUSE required allowing identified-developer kernel extensions. This involved Startup Security Utility in Recovery and selecting Reduced Security with “Allow user management of kernel extensions from identified developers.”
NOTE: This is a security-policy change. Understand the implications before doing it.
I verified macFUSE was loaded:
kmutil showloaded | grep -i fuse
My system showed macFUSE 5.3.3.
I then built the open-source exfat-fuse implementation from source. The resulting driver identified itself as:
FUSE exfat 1.4.0 (libfuse3)
The executable on my system was:
~/exfat/fuse/mount.exfat-fuse
I identified the 24 TB partition with:
diskutil list
Mine was /dev/disk7s1.
IMPORTANT: Do NOT blindly use disk7s1. Device identifiers vary. Identify your own disk.
I unmounted Apple's mount:
diskutil unmount /dev/disk7s1
Created a separate mount point:
sudo mkdir -p "/Volumes/24TB-B-FUSE"
Then mounted the SAME exFAT partition through exfat-fuse, READ-ONLY:
sudo "$HOME/exfat/fuse/mount.exfat-fuse" -o ro /dev/disk7s1 "/Volumes/24TB-B-FUSE"
It mounted successfully.
THE RESULT
I immediately tested the exact directory for which Apple's exFAT implementation had returned “Invalid argument”:
ls -la "/Volumes/24TB-B-FUSE/MAC TEST/A-Ha"
It worked.
All the directories appeared.
I then checked the Music directory that had appeared empty using Apple's driver.
Through exfat-fuse, its contents appeared normally.
I counted its immediate children:
find "/Volumes/24TB-B-FUSE/Music" -mindepth 1 -maxdepth 1 -print | wc -l
Result:
404
404 was exactly the expected count based on Windows.
Finder could now see the previously missing directories as well.
A huge Movies collection also populated with its complete set of subfolders. I opened an approximately 1 GB movie directly from the FUSE-mounted drive and it played normally.
WHY THIS TEST MATTERS
Nothing on the 24 TB filesystem was repaired, reformatted or recopied.
I deliberately mounted it read-only.
The comparison was:
SAME MAC
SAME DRIVE
SAME PARTITION
SAME DATA
Apple native exFAT:
- missing/empty directories
- incomplete directories
- “Invalid argument”
exfat-fuse:
- complete directories
- expected file/folder counts
- files open and play
Windows also saw the complete filesystem.
This strongly indicates that, in my case, the problem was an incompatibility/implementation issue in macOS's exFAT handling rather than missing data.
PERFORMANCE
Finder can be slower browsing huge directories through FUSE. However, raw enumeration was much better.
This:
time ls -1 "/Volumes/24TB-B-FUSE/Music" >/dev/null
enumerated the 404-entry Music directory in about 2.7 seconds.
Actual movie playback worked normally.
IMPORTANT WARNING
If Windows sees files/directories on an exFAT drive that macOS does not, especially if:
- Finder shows empty or incomplete folders
- Terminal returns “Invalid argument”
- Disk Utility says the filesystem is OK
- Windows can still browse/open the supposedly missing files
DO NOT immediately assume the data is gone and DO NOT immediately reformat the drive.
Try the disk in Windows first.
If Windows sees the missing data, testing the volume READ-ONLY with an independent exFAT implementation may help determine whether the problem is macOS's exFAT implementation rather than the disk.
In my case, macFUSE + exfat-fuse 1.4.0 immediately exposed directories that Apple's native exFAT implementation could not.
The files weren't missing. A different exFAT implementation on the same Mac could read them.