Okay, wow. Have you been pulling your hair out trying to get rid of some old Time Machine backup files that simply won’t delete? Well, if you’ve tried a hundred things and ended up here I just might be able to help because I just dealt with the same thing.

What was wrong?

Somehow Time Machine had made a backup to my boot drive. Not sure why or how, but I had a few days worth of backups that were consuming a ton of space on my working drive. I confirmed that I had good backups on my AirPort Time Capsule and took the next natural step, I moved a directory called Backups.backupdb to the trash. I then emptied the trash and got hit with a slew of errors and warnings. The good news is that most of the files and directories were deleted, but there were a couple dozen that were being stubborn.

This led to the appearance of an always full trash icon in the dock. I try to keep things clean and tidy, so this bugged me even though it wasn’t really taking up drive space.

What didn’t work?

  • Emptying the trash
  • Recursively changing all file permissions
  • Recursively deleting (rm -rf) the Backups.backkupdb directory
  • Trying to move the Backups.backupdb directory back to its original location in order to try the above actions
  • A lot of other things I can’t remember

What did work?

I’ll toss out the usual do this only if you know what you’re doing warning. Everyone’s situation may be different and you could potentially screw some things up if you go wild here. If you’re comfortable in the terminal you should find this relatively easy.

  1. Restart your machine and hold down CMD+R as it’s booting to enter macOS Recovery Mode
  2. Go to Utilities > Terminal and enter csrutil disable to turn off System Integrity Protection (SIP)
  3. Reboot your machine with reboot and hit return
  4. Now that you’re back in the full OS, open up your terminal and cd into Trash or wherever your backup directory might be located: cd ~/.Trash/
  5. Recursively delete the backup directory with sudo rm -rf Backups.backupdb and enter your password
  6. Reboot again with reboot and pressing return
  7. Hold down CMD+R as the machine boots again getting you into Recovery Mode
  8. Go to Utilities > Terminal and enter csrutil enable to turn SIP back on
  9. Finally reboot one more time to get you back to normal with a clean trash

This is a super weird edge case that not many people will run into, but whoa nelly did it take me a while to figure out a solution. Hopefully you find this earlier in your process than I did and it proves successful.

Written by Matt Haliski

The First of His Name, Consumer of Tacos, Operator of Computers, Mower of Grass, Father of the Unsleeper, King of Bad Function Names, Feeder of AI Overlords.