Repair External Drive on MacOs
I corrupted an external 4TB Seagate Backup Plus drive. Then, it wouldn't mount. It has a number of old iPhoto libraries that I was consolidating. The drive would not mount in Finder or Disk Utility. I dreaded paying for some overhyped file recovery software, but I was getting nervous. Luckily, I added "fsck" to my search terms and found a good solution, already in the MacOS.
SKIP to the BOTTOM for the real fix.
% diskutil verifyDisk disk6
Started partition map verification on disk6
Checking prerequisites
Checking the partition list
Checking the partition map size
Checking for an EFI system partition
Checking the EFI system partition's size
Checking the EFI system partition's file system
Checking the EFI system partition's folder content
Checking all HFS data partition loader spaces
Checking booter partitions
Checking Core Storage Physical Volume partitions
The partition map appears to be OK
Finished partition map verification on disk6
% diskutil verifyVolume disk6s1
Started file system verification on disk6s1 (EFI)
Verifying file system
Volume is already unmounted
Performing fsck_msdos -n /dev/rdisk6s1
** /dev/rdisk6s1
** Phase 1 - Preparing FAT
** Phase 2 - Checking Directories
** Phase 3 - Checking for Orphan Clusters
2 files, 201628 KiB free (403256 clusters)
File system check exit code is 0
Restoring the original state found as unmounted
Finished file system verification on disk6s1 (EFI)
% diskutil verifyVolume disk6s2
Started file system verification on disk6s2 (Media)
Verifying file system
Volume is already unmounted
Performing fsck_exfat -n -x /dev/rdisk6s2
File system check exit code is 1
Restoring the original state found as unmounted
Error: -69845: File system verify or repair failed
Underlying error: 1
% diskutil repairVolume disk6s2
Started file system repair on disk6s2 (Media)
Repairing file system
Volume is already unmounted
Performing fsck_exfat -y -x /dev/rdisk6s2
File system check exit code is 1
Restoring the original state found as unmounted
Error: -69845: File system verify or repair failed
Underlying error: 1
This was not looking good. It was sunny out, and we needed some exercise, so we went outside and cut shitake logs for a few hours.
When I returned, I tried again, and the drive was working!
% diskutil repairVolume disk6s2
Started file system repair on disk6s2 (Media)
Repairing file system
Volume was successfully unmounted
Performing fsck_exfat -y -x /dev/rdisk6s2
Checking volume
Checking main boot region
Checking system files
Volume name is Media
Checking upper case translation table
Checking file system hierarchy
Checking active bitmap
Rechecking main boot region
Rechecking alternate boot region
The volume Media appears to be OK
File system check exit code is 0
Restoring the original state found as mounted
Finished file system repair on disk6s2 (Media)
The drive mounted well during the repair, and I am back to work.
h/t: comment #2 at https://superuser.com/questions/503759/how-to-run-fsck-on-an-external-drive-with-os-x
Update 10/10/2023: The actual fix for this, is ...
Mount the external drive onto a windows machine.
Run the disk repair utility or chkdsk /f /r
... or similar. That fixes the minor glitch and the drive is ready for mounting on any OS again.