External SSD Won't Eject on Mac: Find What Is Holding It

An external SSD that won't eject on a Mac is held by a process, often Spotlight or a sync app. Name it with one command, or look for a second volume.

(Updated )

If an external SSD won’t eject on your Mac, a program still has a file open on it. Run lsof /Volumes/YourSSDName in Terminal to see which one, quit it, and eject again. If the Mac says the disk is in use but nothing shows up, check for a second volume on the same SSD.

Name the process holding the SSD

Open Terminal (Applications > Utilities) and run:

lsof /Volumes/YourSSDName

Use the name shown in Finder, in quotes if it has spaces. Each row is a process with a file open on the SSD. The usual ones:

  • mds, mds_stores, mdworker_shared: Spotlight indexing the drive
  • QuickLookUIService: a Finder preview of a file on the SSD
  • fsck_apfs or fsck_exfat: macOS checking the drive’s filesystem after a bad disconnect
  • cloudd, Dropbox, Google Drive: a sync app watching a folder on the SSD

Quit the app the normal way and retry. If a filesystem check is running, let it finish. lsof shows what holds files open at that moment. It doesn’t prove that no write is pending, so don’t force quit system processes to get the drive out.

If lsof prints nothing and the eject still fails, move on to the next section.

Check for a second volume

Some portable SSDs mount more than one volume. A small extra volume can hold the drive’s bundled software, and Samsung’s portable T-series drives are known to do this. The SSD isn’t fully ejected while any volume on it is still mounted, so this is worth checking when you can’t find an eject button for a drive that shows a second icon.

See what the Mac has mounted from external disks:

diskutil list external

You will see each disk and the volumes on it. If your SSD has more than one, eject the whole disk in one step. Use the disk number from the list (for example disk4):

diskutil unmountDisk /dev/disk4

Then diskutil eject /dev/disk4 if the disk is still listed. Check the disk number twice before you run either command, since the same commands on an internal disk would cause trouble.

Stop Spotlight from indexing the SSD

A fast SSD gets indexed quickly, and Spotlight often reads it again every time you connect it. To stop that, open System Settings > Spotlight > Search Privacy (on older macOS it’s under Siri & Spotlight), click +, and add the SSD. In Terminal, the equivalent is:

sudo mdutil -i off /Volumes/YourSSDName

You lose Spotlight search on that drive, which rarely matters for a media or backup SSD.

Wait a moment after a big copy

macOS can report a copy as finished slightly before everything is written to the drive. If you try to eject the instant a large transfer ends, you can hit the “disk in use” message for a few seconds. Wait a bit after big copies and retry before you start troubleshooting.

Keep sync folders off the SSD

iCloud Drive, Dropbox and Google Drive watch their folders for changes and keep files open while they do. Keep those sync folders on the Mac’s internal drive. If you use the SSD for Time Machine, it stays in constant contact with the Mac by design. Check the backup status before you eject, as described in Time Machine won’t let you eject.

If a normal eject still fails

How to eject an external hard drive on Mac covers the full order of fixes, including relaunching Finder and logging out. Is force eject safe? explains why pulling the cable is a bad last resort. If the SSD also drops off the Mac by itself, see external hard drive keeps disconnecting on Mac.

Ejecta does the lsof step for you from the menu bar. It shows which processes are holding the drive, and paid actions can quit supported apps and retry the eject. System holders can still mean waiting or shutting down.

Ejecta offers free drive diagnosis without a timed trial. The paid license unlocks quit and eject actions for supported apps, Eject All and Time Machine controls. System holders may require waiting, authorization or shutdown. Save work and finish transfers first.

Buy Now - $29 $9.99