this post was submitted on 17 Oct 2026
40 points (97.6% liked)

Selfhosted

63012 readers
1691 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS
 

Right now I'm creating a nightly restic snapshot of my server on borgbase and on some spare drives, and keeping the snapshots forever. There's a ton of daily churn in my data though, between databases and logs and other files that don't constitute 'real data' but might be needed to restore the app.

top 41 comments
sorted by: hot top controversial new old
[–] Greenbeard@lemmy.zip 2 points 3 hours ago
[–] miaowoo_lw@lemmy.world -1 points 4 hours ago

The useful split isn't by time, it's by data class — your "churn that isn't real data" observation is the key:

Separate repositories for real data vs. app state. Databases, logs, container images, caches in one repo with aggressive expiry; documents, photos, configs in another with long retention. Then "how long" becomes easy per class instead of one uncomfortable compromise.

For the churn class, a sane baseline with restic:

restic forget --prune --keep-daily 7 --keep-weekly 4 --keep-monthly 6 --keep-yearly 2

Reasoning: most restores are "it broke today/yesterday" — dailies cover those. Weekly+monthly exist for "the corruption was already there and I didn't notice" (ransomware, a bad deploy 5 weeks ago, silently-degraded RAID). Yearly is only worth it for truly irreplaceable data.

Two things worth checking on the borgbase side:

  1. Prune actually runs — restic forget without --prune (or borg prune vs borg delete semantics) marks snapshots but never frees repo space. Plenty of people run forget for years and wonder why the repo is full.
  2. Restore tests, not just snapshots — quarterly, restore into a scratch VM. A backup that's never been restored is a hypothesis.

"Keep forever" mostly comes from cheap snapshot storage, but with churn-heavy data old daily snapshots are exactly where dedup saves you the least — the churn is your storage cost there.

[–] miaowoo_lw@lemmy.world 0 points 5 hours ago

Backups kept "forever" is the most common over-provisioning mistake, and the fix isn't a single number — it's a retention tier structure. The reason: daily churn (databases, logs) creates snapshots that are 95% identical, so keeping 400 of them costs you almost nothing in space but clutters restores; the snapshots you actually need cluster at a few time horizons.

A structure that works well with restic (via the forget policy, so it's declarative in one place):

  • --keep-daily 7 — last week's daily points. Covers "oops, I deleted the wrong thing yesterday."
  • --keep-weekly 5 — a month of weekly points. Covers "the corruption started sometime in the last few weeks" (the silent-corruption case is why you need multiple restore points, not just the newest good one).
  • --keep-monthly 12 — a year of monthlies. Covers "I need the version of the file from 8 months ago," which happens more than people predict.
  • --keep-yearly 2 — cheap insurance for the truly weird requests.

Practical notes:

  • Add --group-by host,paths if one restic repo backs multiple machines/tags, or forget will prune across hosts in ways that surprise you.
  • Run restic forget --dry-run first, always. Look at what it would delete before letting prune loose. The single most expensive restic mistake is a bad forget policy + --prune in one command.
  • Separate "churn" data from "real" data with tags or separate repos. Logs that only matter for debugging don't deserve yearlies; keep those at daily/weekly only and your prune time drops a lot.
  • Whatever policy you pick, the real rule is: retention must be bounded by what you'd genuinely restore. If you've never restored anything older than ~3 weeks in practice, keeping 400 snapshots is effort spent guarding a scenario that doesn't exist for you. Pick the tiers, prune once, and stop thinking about it.
  • One more: verify with restic check --read-data-subset=x% on a schedule. A retained snapshot you've never verified is a hope, not a backup.
[–] ShortN0te@lemmy.ml 1 points 10 hours ago (1 children)

As of now, i keep them basically for ever, but granularity gets less over time. (restic forget)

Before you go nuts about files you want to exculde the "churn" as you said it, go ahead and actually check how much space this actually takes up. Text and especially logs are highly compressible and will most likely end up taking up almost no space.

Be sure you backup everything you actually need, rather backup a file more then a file too less.

[–] gwheel@lemmy.zip 1 points 3 hours ago

Comparing daily snapshots I see 100mb+ daily churn (I assume restic diff is pre compression), the borgbase repository space usage chart shows it increasing about 50mb daily.

[–] NotEasyBeingGreen@slrpnk.net 1 points 11 hours ago

I use nightly backups. I keep them 2 weeks.

After that I keep a weekly backup for 2 months.

After that I keep a monthly backup for 2 years.

I keep my yearly backups forever.

[–] Sibbo@sopuli.xyz 14 points 1 day ago

I have daily backups, weekly, monthly and yearly. All but yearly is deleted after a certain time, but yearly I keep forever.

[–] non_burglar@lemmy.world 2 points 18 hours ago (1 children)

Daily for 10 days, 4 weekly, 4 monthly.

That covers me from broken updates, generally.

[–] HubertManne@piefed.social 1 points 13 hours ago (1 children)

came to say something like this but not sure why you would do daily for 10 days. Your doing weeklys so why not 7. I would rather increase the monthly to 7 or do 6 bi monthly and keep a yearly.

[–] non_burglar@lemmy.world 1 points 10 hours ago (1 children)

Your doing weeklys so why not 7

They are all daily backups, those schedules I pointed out are for pruning. And I don't understand the question... How would keeping 7 instead of 10 dailies help me?

[–] HubertManne@piefed.social 1 points 6 hours ago (1 children)

because your last weekly would be a max of 7 days out

[–] non_burglar@lemmy.world 1 points 4 hours ago

How am I going to restore day 8, day 9, or day 10 backups if I only keep 7 days?

[–] hendrik@palaver.p3x.de 7 points 1 day ago* (last edited 1 day ago)

I learned I pretty much never need old data for my hobby selfhosting stuff. So I do 4 weeks. I'll notice if something breaks within 4 weeks and fix it. I occasionally do manual backups, for example when migrating stuff and keep them for longer. And I got some old stuff like in xkcd 1360.

I suppose I could do more, but I also want the privacy policy of my online services to say: x weeks and all the logs and unnecessary data is gone.

[–] PetteriPano@lemmy.world 3 points 21 hours ago

My VPS gets a weekly rsync to my home server. I keep ten deduplicated copies for weeks gone by. The current week also gets synced off-site with encryption.

[–] JustARaccoon@lemmy.world 2 points 19 hours ago (1 children)

7 backups, though the frequency they're taken (daily Vs weekly Vs monthly) depends on the service.

Why don't you exclude logs from your backups? databases sure yes that's where the real info is (not sure why you don't consider it real data) but logs are useless outside of the current running instance.

[–] gwheel@lemmy.zip 2 points 18 hours ago (1 children)

I didn't really want to poke through each containers files to figure out where it stores logs, plus it adds risk that I'm not backing up something I should.

When I say databases aren't real data, I'm more talking about them changing every day despite nothing happening. Even if I haven't taken any photos or opened the app, today's db dump of immich is not the same as yesterday's db dump so restic stores it as a new unique file.

[–] JustARaccoon@lemmy.world 1 points 17 hours ago (1 children)

I did mean to ask, why restic into Borg instead of just Borg?

on the logs thing that's fair enough, most of the stuff I use has a clear "logs" folder I can exclude, and I checked what the backup contains Vs what the container data folder has before calling it a day

[–] gwheel@lemmy.zip 1 points 3 hours ago

I'm not doing any sort of backup conversion. Borgbase is a website that focuses on hosting borg backups, but they also natively support restic. I chose restic out of convenience for my local backups because it came preinstalled on truenas and figured it made sense to use the same for my cloud backups.

[–] Decronym@lemmy.decronym.xyz 1 points 17 hours ago* (last edited 3 hours ago)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
NVMe Non-Volatile Memory Express interface for mass storage
RAID Redundant Array of Independent Disks for mass storage
VPN Virtual Private Network
VPS Virtual Private Server (opposed to shared hosting)

4 acronyms in this thread; the most compressed thread commented on today has 8 acronyms.

[Thread #137 for this comm, first seen 17th Oct 2026, 15:00] [FAQ] [Full list] [Contact] [Source code]

[–] Hupf@feddit.org 3 points 23 hours ago (2 children)
[–] chewypoops@lemmy.world 2 points 17 hours ago (1 children)

Unironically how I use LTO-6 tapes.

2.5TB of storage for ~$5/tape on ebay.

Never delete anything. If the authorities ever come after me, discovery is going to be hilarious.

[–] AHemlocksLie@lemmy.zip 1 points 15 hours ago (1 children)

What's the catch, why don't we use those? I/O speed? Limited read/write cycles? I imagine it sucks if you need files on opposite ends of the tape.

[–] Hupf@feddit.org 4 points 15 hours ago

The drives are crazy expensive if you want to use a somewhat recent generation.

[–] gwheel@lemmy.zip 1 points 17 hours ago

My local backup drives still have room (it's my main pool with all bluray backups that's begging for more space), but borgbase is approaching the point where I'll have to bump to a higher tier or pay per gb. Looking at my usage chart every day adds at a minimum 50mb so something has to change.

[–] NoLemurs@lemmy.world 3 points 23 hours ago
[forget]
keep-daily = 10
keep-weekly = 4

Daily backups are cheap because of de-duplication. I keep a few weekly backups in case it takes me a bit to notice something went wrong. I don't usually back up logs.

I could probably drop the weekly backups without much risk, but I've got the space.

[–] Reannlegge@lemmy.ca 5 points 1 day ago (1 children)

I was backing up multiple places on my LAN but than half of my place flooded, so lamenat and carpet was ripped up, one of my pi 5’s was misplaced with a NVMe drive and another was lost. Than just down the street 3 house went up in flames had the wind been blowing just a little south my condo complex would have been burnt to the ground. After the fire fighters were telling us to get back further and further I had my main pi 5 that had all the backups of everything important on another NVMe drive and a few other things ready to go if the firefighters started banging on my door telling me it was time to leave. I wish I could honestly say that was the day I decided to get a VPS and start my back up, but I was still hoping my father would let me set up a pi with a drive big enough to do back ups at his place. It sounds like he will but he is concerned about security risks about my VPN, funny thing is my back up pi would be the most secure thing hooked up to his modem/router and I wouldn’t want his stuff touching my stuff and with how my LAN and VPN are set up they would have a hard time doing it. Anywho I have a domain hosted by EasyDNS, and just went and looked at their VPS options and got some year long plan and set up cron jobs to take the stuff I want to backup and use age to encrypt it and than it is sent to my VPS each age container is than deleted after there is something of the same name but 3 days iterations older and deletes it.

[–] Dave@lemmy.nz 3 points 1 day ago (1 children)

Is using a VPS cost effective compared to uploading to object storage?

I use rclone to sync backups to Backblaze object storage. I find it hard to believe a VPS would be cheaper, considering the disk space on those can be very expensive compared to object storage.

[–] Reannlegge@lemmy.ca 3 points 1 day ago* (last edited 1 day ago) (1 children)

If it was just for backup backblaze is probably less expensive but my LAN consists mostly of pi’s and hand me down computers. I am slowly moving things around on my LAN so to each their own I guess. I like the idea of having more control over my stuff so having a whole Debian system on the other end feels right for me.

*edit: It also gives me peace of mind knowing that I can encrypt my stuff to my liking. Silly me I forgot to actually look at the encryption tool I used, I just did a search and found age was highly suggested. It is coded in Go, sure it is open source and all that I am just not a fan of the language.

[–] Dave@lemmy.nz 2 points 1 day ago

Ah yeah makes sense if it's not just for storing an offsite copy of backups like mine is.

[–] Zwuzelmaus@feddit.org 4 points 1 day ago

How long do you keep your backups?

Yes, I have that exernal HDD lying around somewhere near the PC, and it was at least 4 or 5 times that I backed up a lot of files on it.

I think I keep it for more than 10 years now.

[–] superglue@lemmy.dbzer0.com 1 points 19 hours ago

I use bormatic, I can go back about 60 days and have needed to a few times in the past due to my own mistakes. Server is in the basement, it backs up toy living room TV pc which is on the top floor. My upload speed is too slow for offsite backups.

[–] Treczoks@lemmy.world 2 points 1 day ago

Let me put it this way: I have a removable harddisk with my files from the universities' VAX 11/780 in storage. Long enough?

[–] fuckwit_mcbumcrumble@lemmy.dbzer0.com 3 points 1 day ago (1 children)

As long as I have space. My backups are on dedicated drives, and as they run out of space the old ones are deleted.

[–] Dave@lemmy.nz 4 points 1 day ago

I guess OPs question is more about what makes you comfortable.

Is your drive only big enough for 2 backups or is it big enough for hundreds? If it was half that size would you still be happy with the number of backups? A quarter of the size?

[–] ISOmorph@feddit.org 2 points 1 day ago* (last edited 1 day ago) (2 children)

I backup once a week. I have 3 backups (in 2 locations). Everytime a new one is created, the oldest is deleted. I figured if I need to roll back something, 3 weeks is more than enough to notice.

[–] passenger@sopuli.xyz 2 points 20 hours ago

With borg or another deduplicating solution you could (probably) fit a year of daily in less space that the source takes. Of course depends how much the data changes over time. Highly recommend pika backup as borg desktop client. You can also easily do "smart" retention where only last week is daily, then weekly, monthly, yearly.

[–] Dave@lemmy.nz 5 points 1 day ago (1 children)

Back when I used OneDrive, it deleted an important but seldom used folder. It just wasn't there anymore. No one noticed for 6 months, but luckily I had kept a backup each month so could restore it easily.

3 weeks is definitely not long enough for me to notice something missing, if it's just a random chunk of my 700GB of important stuff. E.g. if a folder of my kids photos from 5 years ago suddenly disappeared, I probably wouldn't notice it for months but would be devistated to find it missing when I eventually went looking for it.

[–] ISOmorph@feddit.org 2 points 15 hours ago

I don't host massive amounts of data. Just my contacts, calendars, grocery lists, rss feeds, that kind of stuff. All my pictures and movies are on my PC and backed up separately.

[–] Seralth@piefed.seralth.com 1 points 1 day ago (1 children)

Zero or one backups depending on the type of data generally.

For a system if it can't be redeployed from a list of requirements then I Foundationally ducked up. It means either I'm depending on something fragile, unknowable or over complicated.

Raw data on the other hand goes on a raid array. If I need more redundancy then that, then a single extra off site backup on a cd or something.

A back up on the same drive as the original isn't a backup. It's a waste of space, and a stupid idea.

A system that requires excessive nonsense is not reliable.

If I have a on and off site back up and both fail. Then either the world is literally fucking on fire and it doesn't matter. Or someone dropped a bomb on my storage.

Either way I have bigger problems at that point.

[–] Sibbo@sopuli.xyz 2 points 23 hours ago (1 children)

A back up on the same drive as the original isn't a backup. It's a waste of space, and a stupid idea.

It's a backup that helps against software errors, but not against drive failures. Depending on what you want to achieve, it's a perfectly valid strategy.

[–] confusedpuppy@lemmy.dbzer0.com 2 points 17 hours ago

I generally have Operating System backups that are stored on the same drive. Those backups are immediately copied to 3 different devices, my computer and two other drives

The backup on the local drive is useful for when I'm tinkering, making adjustments, adding or removing stuff. Restoring from that local backup is far more convenient than using the remote backups

I don't use anything with a database so all my static media files and wiki's don't go to the local backup. I handle them separately but they are still spread across the 3 other devices in my network