Top
Best
New

Posted by afilipovski 12 hours ago

Backups Aren't Simple(filipovski.net)
229 points | 138 comments
dirkc 1 hour ago|
> “There are two types of people: those who have suffered a catastrophic loss of data, and those who will.”

When I was a teenager, I was the reason for data loss for my dad, twice. Both times it was because I was re-partitioning a hard drive to install linux.

You would think that taught me a lesson about backups, instead it reminds me every now and again to be grateful for an awesome dad and aspire to handle situations with my kid similarly :)

publlus_enigma 8 hours ago||
There are four times in my life I have suffered regrettable data loss incidents.

The first was when the telephone pole outside our house was struck directly by lightning. Not only was it the loudest thing I have ever heard, the current surged through the telephone line, into the internal fax modem, and fries everything within its vicinity. I was 10. I did have backuos, but only only floppy and they didn't cover everything.

The second was storing data in OneDrive - a change to their terms surrounding "lifetime" unlikely noted storage, combined with a client that was unusably slow to download and a deadline for data retrieval meant that I lost most of my files.

The third was SD card failure in digital camera on holiday, the controller chip died catastrophically, leaving the card completely unrecognised. It was a brand new Sony 128GB card, manufactured by Toshiba, and it seemed to be a common issue. I now shoot to two cards simultaneously.

And the fourth time was ... Performing a backup. An errant script deleted the source content, but I'd also deleted the existing backup to free up space for the new backup. I've been weary of using rewritable media for some time now as a consequence, but I think backups themselves are high risk activities.

Dylan16807 2 hours ago||
I would say you didn't get quite the right lesson from the fourth one. Rewritable devices are fine, but have (at least) one backup completely unplugged while you update another backup.
lolakutty 3 hours ago|||
>I did have backuos, but only only floppy and they didn't cover everything.

This made me remember the time during the 90s when I lost all my BASIC programs due to a hard disk crash, and seeing me sitting sad, my mother handed me a bunch of floppies and asked me to see if they contain something useful.

And turned out that it had all the programs! I took the backups and forgot about that. Apparently that is one of the hard things with backups. You need to track them...

cvhc 8 hours ago|||
> a change to their terms surrounding "lifetime" unlikely noted storage

I had a similar experience with a Chinese cloud storage provider. They didn't even give a convenient way to export the data. And the client throttled download to like 100KB/s. I luckily was able to parallel download by running the client on several VMs...

> An errant script deleted the source content, but I'd also deleted the existing backup to free up space for the new backup.

Sounds like the backup workflow is fundamentally flawed... But I also have the fear that the backup program with root privileges can go off the rails... So I keep my backup job as simple as just running restic with some systemd restrictions.

BLKNSLVR 5 hours ago|||
OneDrive...

So much fail in one single product.

hulitu 4 hours ago||
It is made by Microsoft, the experts in this domain.
Gigachad 7 hours ago|||
>I've been weary of using rewritable media for some time now as a consequence

I briefly considered using bluray disks as a backup for my photos and other critical docs. But getting a decent bluray burner seems not so easy these days with most production winding down. Next best thing looks like the "object lock" feature on object store services that prevents deleting objects for a certain time.

Terr_ 7 hours ago|||
I pretty much instantly wrote off physical media because I know I won't reliably move it to a separate location. If I'm going to have backups, I want ones that are not within fire/flood range of my computer.

In terms of preventing "oops" moments, I'm mainly relying on software (restic) for that, where I trust that (A) backups always append data rather than replacing and (B) it's logic works for marking which data to purge based on rules is accurate. [0]

[0] https://restic.readthedocs.io/en/stable/060_forget.html#remo...

Gigachad 1 hour ago||
You want to make sure the append only is enforced by the hosting provider rather than duplicity. Your backups should be resistant to having an attacker on the system who can run arbitrary commands with duplicity.
cyberax 7 hours ago||||
I bought a tape library for my backups, but that's probably an overkill.

On the other hand, LTO-5 drives are now pretty affordable. And each tape cartridge holds around 2Tb of data for about $20.

XorNot 6 hours ago||
Wait really ? That's a huge change from last time I looked. How much did this setup cost you?
cyberax 4 hours ago||
I kinda overdid it with a tape library (40 tapes capacity, LTO-9), but I'm using it for my company's AI model backups. _That_ setup was about $12k.

I had a smaller setup before, with a simple external LTO-5 drive. Used drives are now are about $300, and you can probably find them cheaper. And LTO-5 is the minimum realistic version, it's the first one that supports LTFS and it has reasonable tape capacity.

justsomehnguy 6 hours ago|||
> Next best thing looks like the "object lock" feature on object store services that prevents deleting objects for a certain time.

Lol, no. "As of today we are closed. Goodbye."

Especially considering what giving even a two weeks now considered "generous".

Gigachad 2 hours ago||
This is for backups. The threat here is that random ware uses your backup script to delete/encrypt the backups too. With object lock the api key the script has can only add data.

The probability that the object store goes out of business at the exact time your own copy dies is insignificant.

justsomehnguy 2 hours ago||
No object lock API would help you if the business where you rent the service is going out of... business. With all your data - and you are without.

Or even fancier - just changing the price for the egress.

Gigachad 1 hour ago||
That only matters if it happens literally at the same time as a failure of your primary storage. If they increase the price you can just close your account and move the backup to another service.

The probability of a hard drive failure or ransomware at the same time as backblaze or aws going out of business is pretty much not worth thinking about.

The probability of an attacker using the api key in your backup script to destroy the backups is far more possible.

dsego 5 hours ago|||
For digital media we really need a good stable archival storage solution. Nothing on the market right now for ordinary people.
torton 4 hours ago||
There's plenty of backup services and cloud solutions. The article mentions Borg and Restic, others like Backblaze are more consumer friendly. Which needs do you have that aren't met by any of these tools?
BetterThanSober 2 hours ago||
> backup services and cloud solutions

online backup should not be your primary method of backup, you're one billing, identity theft, financial issue, or health issue away from getting your backup nuked

do you have PBS clout? if not good luck https://arstechnica.com/information-technology/2026/08/pbs-s...

Gigachad 1 hour ago||
Online only is fine as an actual backup, presuming you have the primary in your control.

It shouldn’t be the only copy of the data that exists.

baxtr 4 hours ago|||
Since we’re talking about it: anyone backing up their iCloud photos? If so, how?
reddalo 2 hours ago|||
It's not iCloud Photos, in my case it's Google Photos. But I keep a copy of all my photos in a self-hosted instance of Immich [1], which I then back up to a Hetzner Storage Box using Backrest [2].

So I end up with 3 copies of all my photos, on 3 different providers (I mean... 2 different providers plus my homelab disk).

[1] https://immich.app/ [2] https://github.com/garethgeorge/backrest

unanimous 2 hours ago||||
When I was using Ubuntu, I would plug my phone into my laptop and run this small script: https://gist.github.com/wheelercj/8cce112fc8ee55fd4858847a52...

It's mainly just rsync. When the phone was plugged in, the photos were accessible at a path like "/run/user/1000/gvfs/gphoto2:host=Apple_Inc._iPhone_abc123/".

Now I use Time Machine, but I still need to check whether it includes iCloud photos.

lloydatkinson 1 hour ago||
Does this include all the image metadata and who knows what else?
unanimous 35 minutes ago||
While I haven't tested for that myself, the script should keep pretty much everything including image metadata. I just made a small change so that it also keeps extended attributes in case any image-related metadata is there.

The script currently requires changing one or two folder paths at the top (more details in the script).

nodar86 1 hour ago||||
I self-host Immich, and run the iPhone app to back up my photos. I used this guide [0] for the initial import.

[0]: https://github.com/immich-app/immich/discussions/21251

mmazzarolo 3 hours ago||||
I have a weird setup lol. I use a shared photos library with my partner (so that we have all family photos together) and have a MacBook Air that has Photos being download in raw quality and backups then via Time Machine on a Synology NAS. Plus, Synology photo sync on my iPhone (backing up on my NAS separately from Time Machine) AND Google Photos on my partner’s (syncing on Google Photos). Yes it’s horrible, just never had time to clean I up properly but I prefer to have them in multiple cloud locations and locally for now than optimise for having a clean setup.
undebuggable 3 hours ago||||
From iPhone into local machine through LocalSend or AirDrop, then your usual favorite backup pipeline.
fragmede 3 hours ago|||
Arq.

https://www.arqbackup.com/

Forgeties79 8 hours ago||
>I now shoot 2 cards simultaneously

A very lovely change over the last 8 years or so lol. I came up in film during the DSLR revolution. 5D2’s/7D’s/Rebels (i series) years.

8bit 420 nasty aliasing recording on single cards and praying baby. Magic lantern booted on those same SD’s!

Melatonic 2 hours ago|||
Magic Lantern was awesome. I still have raw video sequences I shot on a 5D mkiii
jeffbee 7 hours ago|||
Mainstream DSLRs with dual card slots came out 22 years ago.
mrheosuper 7 hours ago|||
Sadly after 22 years, it's still considered a "high-end" feature. Even on $1600 Fujifilm x100vi, there is still single SD slot.
dsego 5 hours ago||
I also have the same fuji. Digital cameras are still in the stone ages. I think Tony Northrup covered it well. Nothing has changed since digital cameras came to market, the workflow is still the same, copy files from a card to PC. They aren't connected to the internet, they don't have automatic syncing to cloud for backups or sharing, fuji doesn't even have a gps chip built in to store the location (only works if connected to a smartphone), they can't be locked via fingerprint scanner. It's all tech from 25 years ago.
podocarp 4 hours ago|||
In some senses it's good. That feature list just says "use a smartphone then". No thank you. It's everything that a camera should not be.

GPS is useful, but not wifi. I don't need my camera becoming another IOT always online telemetry device. They're one of the few electronic devices built to last. Imagine needing fingerprint unlock on a camera, and for what? Prevent others from viewing your photos? Changing your settings? Also copy from card to pc is the best possible workflow. Imagine cameras like smartphone with no expandable storage.

Stop giving these people ideas! I am now very afraid they will listen to this guy since he actually has a follower base.

iririririr 1 hour ago|||
why do you assume a functionality will obligatory be abused against the client?

pro camera manufacturers are not google or apple. Have we became that defeatist?

justsomehnguy 2 hours ago|||
> Also copy from card to pc is the best possible workflow

So turn off the camera, open the memory card slot cover which is flimsy 1mm prong, eject the card, insert it in the reader (if you have SD reader) or fiddle the microSD first from the convertor and then insert, copy, (insert microSD to SD convertor), open up slot cover, insert the card.

Surely beats just connecting the camera to the WiFi (which it does have anyway) and downloading through SMB. Suuure.

S9900 from 15 years ago had a built-in GPS receiver (and absolutely unneeded and never updated POI system). P1100 needs a smartphone for GPS for whatever reason - and app doesn't work 5 times from 5. But the latter is on me, I knew what I would get when I bought Nikon.

Gigachad 1 hour ago||||
Cameras had gps for a moment but they all dropped it because it sucks. GPS takes a long time to get a fix so unless you want to turn the camera on and sit for 5 minutes before taking the photo, it doesn’t work. Meanwhile an app on your phone can ping the current location to the camera for free. Your phone always has a location lock and it’s super power efficient at getting it.

And the rest of it is essentially features for a market that doesn’t exist. People buying cameras today don’t want to send straight to Facebook. They want to sort through raws, edit in Lightroom and then post from a laptop. The market for the features you want all moves to phones long ago.

Sony also has a bunch of the features you are asking for. It can connect to the internet and live sync files to an ftp server. It can even upload proxy videos so your editors can start work before you get back to copy the master copy over. Cameras are sold to prosumers and actual professionals now so the featureset reflects it.

mrheosuper 38 minutes ago||
> People buying cameras today don’t want to send straight to Facebook.

Pretty sure that's the main point of Fuji camera, the output and built it filter is decent enough that you can upload to Social network without any editing.

t0bia_s 4 hours ago|||
Windows OS is also stone age. There is no simple way to list all user data, or user edited system data for simple backup in readable format.

Btw X100F has Wi-Fi and automated file transfer to PC. But it is faster to transfer it via SD card.

jimmaswell 6 hours ago|||
I would hope they have some feature for automatic backup to your phone over bluetooth or such today.
mrheosuper 2 hours ago|||
Bluetooth is slow. The transport is 3Mbps at max, if you subtract all the headers from different layers, you may have like 1.5-2Mbps practical transfer speed.
Dylan16807 2 hours ago||
Sounds like the "or such" wins, but even with bluetooth speeds that means you're backing up 1-5 photos per minute and that helps a lot.
mrheosuper 43 minutes ago||
And harm a lot too, you phone can't deep sleep since it has to wake up periodically to process data from bluetooth stack. Combined with slow transfer speed, that gonna eat your battery like nothing.
dsego 5 hours ago||||
They do transfer, but it's not automatic.
robmccoll 5 hours ago||
My Nikon ZF transfers to my phone through Nikon's SnapBridge app automatically.
dsego 4 hours ago||
Oh, that's cool, kudos to Nikon, could be a good reason to switch over from Fuji.
jeffbee 6 hours ago|||
WiFi is a little faster I guess? In the primitive days people used the EyeFi.
jimmaswell 5 hours ago||
You would often not have wifi available, and you wouldn't want to have to type in wifi passwords to your camera all the time. But your phone will almost always be nearby and persistent bluetooth is easy.
toast0 4 hours ago||
Wifi between your camera and the phone. Or your camera and a laptop in your bag or whatever...
Gigachad 1 hour ago||
Problem is they have to disconnect from the current wifi ap to connect to the cameras ap which is inconvenient and means there can’t be a constant connection.

Wifi NAN could be used to solve this problem but I’ve not seen anything using it. Apple only just added support last year though.

AdieuToLogic 8 hours ago||
A friend of mine used to work at Veritas[0] making enterprise data retention solutions. When I spoke about their product as being "making backups", he corrected me by saying:

  We are not in the backup business.  We are in the restoration
  business.
0 - https://en.wikipedia.org/wiki/Backup_Exec
voiceofunreason 7 hours ago||
Backups are boring. Restores, on the other hand, are often exciting.
BLKNSLVR 5 hours ago||
Backups can be automated. Restores are a manual, heightened-attention, deep-focus process.
returningfory2 7 hours ago|||
Correct. In data protection, backup is not the feature. Restore is the feature.
justsomehnguy 6 hours ago|||
> https://en.wikipedia.org/wiki/Backup_Exec

No. But, well, yes: if you use BE - you will need a restore pretty soon.

I'm the person who actually experienced BE walking around the file server and deleting files. Helpful suuport person had done the needful and said what this is not an issue and it wouldn't be reported as a bug.

Paracompact 6 hours ago||
"This is the business we've chosen."
Helmut10001 3 hours ago||
I really like ZFS snapshots with offsite pull-mode sync using Jim Salter's sanoid/syncoid [1]. ZFS is the base for all OS/filesystems on top of it. If you have a good system for organizing ZFS datasets, and separating ephemeral from persistent data (e.g. [2]), then this is 90% of the backup requirements already fullfilled.

    [1]: https://github.com/jimsalterjrs/sanoid
    [2]: https://du.nkel.dev/blog/2026-05-16_rootless_docker_virtiofs_proxmox/
freebsd_lovefes 15 minutes ago||
And FreeBSD comes with native ZFS. MORE, it snapshots your OS before updates/upgrades, so you never ever screw up any upgrade.
zenoprax 1 hour ago|||
Thanks for the second link - looks interesting.

I have an old and loud 16-bay server that boots every 7 days or so if no one is home, `syncoid there here`, and shuts off. I'll get pinged by uptimerobot once in a while if it's overdue and I'll get a notification if a pool is unhealthy or reaching capacity (`sanoid --health` I think). Otherwise I forget I even have it set up.

Automated cold backups are great peace-of-mind.

Helmut10001 31 minutes ago||
[dead]
Aldipower 1 hour ago|||
Using this in production for 5 years now. We have a replicated MongoDB and one replica lives on a ZFS doing snapshot backups via syncoid. Love it.
hovering_nox 1 hour ago|||
I like to use ZFS snapshots of running systems and then create and upload the backup from them via the excellent Borgmatic. (I know you can't depend on snapshots for databases and similar, but it's worked until now™.)
aborsy 2 hours ago||
Agree!
ebrahimh 8 hours ago||
I’m setting up 3-2-1-ish backups for my infra of 3 hosts, and definitely leaning towards Restic + Backrest.

All my hosts run the same CoreOS setup (https://github.com/ebrahim37/infra-template), where container volumes are placed in one central volumes/ folder and that is the only thing I have to backup.

I plan to implement it like this:

  vps1:
  - restic container with custom sh entrypoint that will backup volumes/ to homelab every 24 hours
  homelab:
  - backrest container, to back up volumes/, do prune/check, replicate repo to offsite
  - rest-server container, will store backups from vps1, homelab, offsite
  offsite:
  - restic container, backs up volumes/ to homelab every 24 hours
  - rest-server container, store copy of backups from homelab
Only caveat is backing up databases, will either have to do: stop container, backup volume/database-data, start container; or use pg dump etc.

The deduplication is nice, you can have a snapshot for each week of the past year without crazy storage cost

zenoprax 1 hour ago||
I've been trying to find a solution for this too! I was considering using Rclone but too many things are using SQLite for me to trust rsync. I was also going to go with CoreOS but I'm leaning towards Fedora Cloud now in case I need to manage things a bit more (and "auto updating" is not something I want as that suggests auto rebooting).

Your secrets.yaml makes me nervous though - too easy to miss a key and leave something exposed. Why not just add the whole file to the vault?

codys 8 hours ago|||
If your system has a way to take consistent snapshots in the filesystem (btrfs, zfs) or volume manager (lvm2, perhaps with a bit of filesystem support to obtain fs consistency), that can be used to avoid database downtime, if desired.

https://www.postgresql.org/docs/current/backup-file.html

ray_v 4 hours ago||
[flagged]
crossroadsguy 5 hours ago||
If you don't control your data size, it will end up controlling you and your backup choices, which will eventually lead to many avoidable, disastrous outcomes. Somehow, this gets missed in data storage and backup planning.
OroPla 33 minutes ago||
Bit rot was mentioned in the article, but then no solution was offered. I also haven't found a good solution, unfortunately. If you only have a couple of Terabytes you could create check sums of everything and then verify regularly, but I feel this approach doesn't scale very well if you have lots of data.
GTP 28 minutes ago|
If you have lots of data, I would suggest using a filesystem designed for this, like ZFS or BTRFS. You would still have to spend in storage though, as ultimately protecting from bit rot requires redundancy.
bloomingeek 10 hours ago||
"encrypted, chunk-level deduplicated, GFS-rotated, point-in-time archived, cloud, 3-2-1 backup solution" is now my newest password, no commas. (Don't tell anyone!)
b3lvedere 23 minutes ago||
Person entering coffee shop:

"So what is the WiFI password here?"

"You sure would to like to know that eh you effing hipster"

"Does that start with a capital Y?"

"Yes"

rileymat2 10 hours ago||
Change the o in rotated to a 0 and you might have a secure password.
abejora 1 hour ago||
I agree with this sentiment! For our Abejora timesheet SaaS, setting up backups was one of the harder parts. We had to change direction a few times while implementing it.

We finally got a nice setup with CloudNativePG + Barman. This allows for point-in-time restores, but there were a lot of lessons to learn along the way.

- The various types of (database) backups (logical, binary, onsite, offsite, snapshots, write-ahead log...) in combination with the various types of data (database, files, cluster configuration...)

- In our earlier approaches, we tried to preserve the old database volume if it was not corrupt, and use that in our restore. This caused so many complications, because you are fighting the recommended approach. So now, when we need to restore, we always restore from backups and the 'live volume' is dropped.

- For a restore, we just spin up a completely new Kubernetes cluster, instead of trying to restore in-cluster. This is a lot easier.

- Many object stores allow for retention periods, which you can put to good use to prevent malicious or accidental removal of backups. HOWEVER, not all of them are really 'locked'. In some services, you can still override the lock with a forced delete; in others, you can still remove the project holding the storage buckets, which will delete the buckets, and so on... so test those things, instead of just blindly depending on a 'retention period' claim.

- We now automatically run a scheduled restore with verifications on a weekly basis. This requirement does shape your environment, so keep that in mind! There is also the question of how you can reliably and automatically verify that the restore restored the latest data (of a live prod environment). Various solutions exist here, but most are not very elegant!

Honestly, this is only worth it if you are already handling sufficient volume. If you are just starting out, then the easier approach is to just go with a hosted database, which will handle backups and point-in-time restores for you.

flippingheck 2 hours ago|
> There are two types of people: those who have suffered a catastrophic loss of data, and those who will.

This is an empirical claim, but is it grounded in reality?

99% of people don't backup, and that's probably the right choice because the risk is low, they can't meaningfully improve their restoration rate themselves and they don't care enough about their data to classify its loss as catastrophic.

When a person hears someone talk about the importance of backups, but also haven't heard friends/family suffer this date, they will rightfully ignore this warning.

Or do we all follow the best practices as it relates to backups, exercise, sleep, nutrition, accounting, house maintenance, ... Etc.

I do not. Backups aren't near the top of that list.

This stuff just isn't very important to most people and that's okay.

afilipovski 1 hour ago||
Let's say SSDs have an annualized failure rate of 1%. (The real figures are from 0.5% for more reliable ones, 1.5% for less reliable ones). The annualized failure rate for HDDs is a bit higher, but let's give it 1% anyway.

Over 40 years (even with changing disks, upgrading PCs, etc.), the chances of you ending up with your data intact is 0.99^40=0.67. May not seem too bad, but this is just a hardware failure of your main drive we're talking about. When you factor in all the other types of screwups that happen, the annualized failure rate will skyrocket.

So a more conservative version of this quote is that a 20-year old today is very likely to experience data loss over his lifetime.

Thankfully with cloud being ubiquitous at least photos are given one copy in the cloud, but IMO even that is risky. People have different appetites for risk, and that's OK. But over the last 20 years the all of our data has become pretty important. I don't know how many people could stomach the loss of important documents, photos, etc.

Gigachad 1 hour ago|||
It’s because they all use cloud services these days which the tech companies manage backups for them. The only risk is getting locked out or banned which is far less common than hard drive failures or malware back in the day.

It’s still vitally important if you are self hosting your data.

grumbelbart2 2 hours ago|||
> 99% of people don't backup

This depends on your viewpoint. Using gmail for example is an implicit backup of your e-mails. Uploading your pictures to Facebook the same. The move from local, private compute and storage to the cloud solved this issue for many to a degree that it is now less important.

ygouzerh 2 hours ago||
I think this is more a quote for engineers
More comments...