I set up a crontab to delete federated media from other servers every day, changing the rule to keep remote media for one day and not seven, because federated media fills up storage very quickly now that servers are more active. Which is a good thing, just needed to adjust to the change! This should get rid of the occasional downtimes we've been having, which were from the disk filling up.
We're currently using 24 GB out of 38 GB of space and I expect to clear out more space by culling remote accounts that are no longer there and removing unreferenced remote statuses, both computationally heavy operations that I'll be running during my daytime when the server is less active.
Longer-term I plan to move media files off-server to object storage. Once done this would make the storage situation even more comfy. It's just a little more involved than I thought because evidently Mastodon doesn't by default talk to the B2 buckets service I use and needs to be routed through a local copy of minio, which according to my research only runs on docker? As I have never docker'd before I'm just trying to understand what this thing lol. Anyway, I'll get there eventually and in the meantime we're not in imminent danger of running out of space.