It's possible that there are files in some other user's trash. The .Trashes
folder at the top of each volume has subfolders for each different user, by user ID number (e.g. user 502's trash is in .Trashes/502
).
You can see if it for yourself using a command like this (replace VolumeName
with your drive name):
ls -la /Volumes/VolumeName/.Trashes/
total 0
d-wx-wx-wt@ 3 _unknown _unknown 102 10 Feb 18:15 .
drwxrwxrwx@ 21 root wheel 782 13 Feb 14:17 ..
drwx------@ 35 _unknown _unknown 1190 13 Feb 14:18 502
Note: you might get a permissions error from this command, either because the .Trashes folder doesn't allow read access (solve this by adding sudo
, e.g. sudo ls -ls ...
, and entering your admin password when requested); and/or because of the privacy protections in macOS Mojave (10.14) and later (solve this by granting the Terminal access in System Preferences > Security & Privacy pane > Privacy tab > Full Disk Access category, see here for more details).
As you can see, on my USB disk .Trashes
folder there's a sub foder called 502
, owned by user ID 502 (for reference, my current user ID is 501). Since this user doesn't exist on my system, I see it as _unknown
, and my user can't look inside of it, neither delete it. To look inside that folder we need to do it as administrator (i.e. use sudo
).
If you are sure that you want to, you can delete everyone's trash by deleting the entire .Trashes
folder with a command like:
sudo rm -R /Volumes/volumeName/.Trashes
Warning: as with anything involving sudo
("do as super user", i.e. system administrator) and rm -R
, use this carefully. If you type it wrong, it could have ... unpleasant consequences.
A quick google found this article. You can enable secure empty trash as the default from the Finder preferences:
For nearly every version of Mac OS X, there is also an option to
always securely empty the Trash, enabled within the Advanced Finder
preferences. If you regularly work with private data this is a good
feature to turn on.
Best Answer
It's possible that there are hidden files in your Trash that are not being removed for some reason and are constantly being "deleted". If you are ABSOLUTELY sure there is nothing in your Trash you may want to recover, you have two options.
Secure Empty Trash:
This forces Finder to remove files that may otherwise be stubborn. It may take a while depending on how many files need to be deleted as the reference to the data is not only deleted, but the addresses the data is stored at (on your disk) is also zeroed out. Be wary of doing this with a Solid State drive as it will shorten the life of your drive (generally only by a small fraction, but caution should still be taken). If you have a Solid State (or Fusion) drive, I would recommend the following instead:
Brute Force Erase:
cd ~
and hit Returnsudo rm -rf .Trash
and hit ReturnTerminal will remove the
.Trash
folder that stores everything in your Trash. This folder will be rebuilt by OS X as needed. This doesn't securely erase your data (by overwriting with zeroes) and thus is safe for use on SSDs and Fusion Drives. You can also use this if "Secure Erase" fails for some reason.As @patrix notes, this will not remove anything from your Trash that was originally stored on an external drive as each drive has its own
.Trash
folder. If you have multiple user accounts, this will also not remove anything that another user has Trashed as each user has their own.Trash
folder too.As a precautionary measure, I would then verify your disk in Disk Utility (in case some data tables have been corrupted) and repair if necessary.