My Aperture library tends to grow much larger than it should. It seems as though Aperture does not delete the thumbnails for photographs even when deleting the originals, leaving several gigabytes of orphaned kruft behind, accumulating bits, filling up volumes. I delete most of the photos I shoot, so the majority of thumbnails in my library are orphaned. But there's a quick and easy way to clean it up. After backing up the entire library, I did this (after a blog post by Brett Gross):
First, find out how many petabytes of space have been sucked up on your drive by thumbnails:
find ~/Pictures -name "AP.Thumbnails" -print0 | xargs -0 du -ch
find ~/Pictures -name "AP.Minis" -print0 | xargs -0 du -ch
find ~/Pictures -name "AP.Tinies" -print0 | xargs -0 du -ch
Then, after backing stuff up, this'll clean out the kruft:
find ~/Pictures -name "AP.Thumbnails" -delete
find ~/Pictures -name "AP.Minis" -delete
find ~/Pictures -name "AP.Tinies" -delete
After running it, Aperture will have to generate new thumbnails for all of the photos in the library - but it won't generate thumbnails for the photos that were deleted, obviously. On my desktop box at work (with only 4535 photos), this cleared up a couple of GB of space. Thumbnail regeneration took almost an hour. I'll try it on my home laptop tonight, with over 30,00017,000 photos on it. It'll probably take several hours to regenerate thumbnails.
Of course, it'd be nicer for Aperture to properly clean up after itself - the whole point of abstracting file management behind the library interface is to make this kind of mundane maintenance stuff unnecessary.
Update: I ran it on my main Aperture library, with 17,371 photos. After letting Aperture rebuild thumbnails overnight, I saved 2GB of disk space from orphaned thumbnails. That may not seem like a lot with today's gigantor-sized drives, but that's a LOT of kruft that could have been easily cleaned up by properly removing thumbnails when deleting photos from the library. Leaving them behind to fill up drive space is just lazy and sloppy.