macOS Error -36 (ioErr) — Input/Output Error

Error -36 (ioErr) indicates an input/output failure at the filesystem or hardware level. On macOS, this error commonly appears when copying files, mounting drives, or accessing external storage. It means the system attempted a read or write operation and the underlying storage device or filesystem returned a failure. This can stem from file corruption, failing hardware, or filesystem inconsistencies.

Common Causes

  • Failing hard drive or SSD
  • Corrupted filesystem on internal or external disk
  • Faulty USB cable or port for external drives
  • Filesystem corruption from improper ejection
  • Bad sectors on the disk
  • Network share experiencing connectivity issues
  • APFS or HFS+ container corruption

How to Fix Error -36

1. Run Disk Utility First Aid

Disk Utility’s First Aid checks and repairs filesystem errors:

From macOS Recovery:

  1. Shut down your Mac
  2. Press and hold the power button (Intel: hold Command+R) until startup options appear
  3. Click Options, then Continue
  4. Open Disk Utility from the recovery menu
  5. Select the affected volume
  6. Click “First Aid” and then “Run”

From Terminal:

# Verify the volume
diskutil verifyVolume disk1s1

# Repair the volume (must be unmounted or run from Recovery)
diskutil repairVolume disk1s1

2. Check S.M.A.R.T. Status

Verify the physical health of the disk:

# Check S.M.A.R.T. status
diskutil info disk0 | grep SMART

# Or for a more detailed report using smartctl
# Install via: brew install smartmontools
sudo smartctl -a disk0

A “Verified” SMART status means the disk is healthy. “Failing” means back up immediately and replace the disk.

3. Verify and Repair the Filesystem

Use fsck in single-user mode or from Recovery:

# Boot into Recovery mode, open Terminal, then:
# For HFS+
fsck_hfs -fy /dev/disk1s1

# For APFS (fsck_apfs handles containers automatically)
fsck_apfs -fy /dev/disk1s1

Note: On Apple Silicon Macs, boot into Recovery by pressing and holding the power button, then select Options > Terminal.

4. Reboot into Recovery Mode and Reinstall macOS

If disk errors persist, the system volume may need repair:

  1. Boot into Recovery mode (Command+R on Intel, power button hold on Apple Silicon)
  2. Open Disk Utility
  3. Run First Aid on “Macintosh HD”
  4. If First Aid fails, back up data and reinstall macOS

5. Check External Drive Connections

For external drives, try these steps:

# List all connected disks
diskutil list

# Check if the external disk is mounted
mount | grep -i "external"

# Unmount and remount the disk
diskutil unmountDisk /dev/disk2
diskutil mountDisk /dev/disk2

# Force eject if stuck
diskutil unmountDisk force /dev/disk2

Physical troubleshooting:

  • Try a different USB port (preferably a directly connected port, not a hub)
  • Replace the USB or Thunderbolt cable
  • Test the drive on a different Mac
  • Avoid daisy-chaining multiple USB devices

6. Reset NVRAM/PRAM

NVRAM stores disk and filesystem settings that can become corrupted:

Intel Macs:

  1. Shut down the Mac
  2. Press the power button, then immediately hold Option+Command+P+R
  3. Hold for 20 seconds until the Apple logo appears or the second startup chime

Apple Silicon:

NVRAM is reset automatically. Simply restart the Mac.

7. Repair the APFS Container

If the APFS container itself is corrupted:

# List all APFS containers
diskutil apfs list

# Verify the container
diskutil apfs verifyContainer disk1

# Repair the container
diskutil apfs repairContainer disk1

8. Copy Files Using Terminal to Bypass Finder

Finder can sometimes trigger error -36 for files Terminal handles fine:

# Copy a file using ditto (preserves metadata)
ditto /path/to/source/file /path/to/destination/file

# Copy with rsync (more robust for large files)
rsync -avh --progress /path/to/source/ /path/to/destination/

# Copy with cp (simple, no metadata preservation)
cp -R /path/to/source/ /path/to/destination/

9. Check for File Corruption

Verify the integrity of the specific file causing the error:

# Check if a file can be read fully
cat /path/to/file > /dev/null && echo "OK" || echo "Corrupted"

# Get file checksum to verify integrity
shasum -a 256 /path/to/file

# For disk image files, verify the checksum
hdiutil verify /path/to/image.dmg

10. Reformat a Corrupted External Drive

If the external drive is consistently producing error -36 and First Aid cannot fix it:

Warning: This erases all data on the drive. Back up first.

# Identify the disk number
diskutil list

# Erase and reformat (choose the appropriate filesystem)
# For macOS-only use:
diskutil eraseDisk APFS "NewName" /dev/disk2

# For Mac + Windows compatibility:
diskutil eraseDisk ExFAT "NewName" /dev/disk2

When to Seek Professional Help

Consider professional data recovery if:

  • S.M.A.R.T. reports “Failing” status
  • Disk makes clicking or grinding noises
  • Error -36 occurs on the boot volume and Recovery cannot repair it
  • Data on the disk is irreplaceable