Mirrored pool on two USB drives for external backup?

How well do you think two M.2 SSDs in USB enclosures would work in a mirror as an external backup that gets plugged in and replicated to once every week or so?

My offsite backup NAS just randomly went belly up. (I think it’s the machine itself, not the drives. When I plug in a flash drive with Mint on it, trying to boot the iso just causes the machine to reboot, so idk. It’s a UGREEN DXP2800 running Debian if anyone cares. No idea what killed it. Very irritating.) Just shows, there’s no replacement for cold backups.

My main NAS is working fine. I’ve got a mirrored 1tb NVME pool for stuff I access all the time with Syncthing and Samba, plus a spinning pool for media and long term storage.

Currently I have two 1tb Toshiba USB SSD external drives I use to back up my fast pool. I plug one in and import, use Syncoid to update the single v-dev pool on it, then export it. I rotate them and keep one offsite. Been doing this for a while and never had any issues. I use the same process to back up the spinning pool using a USB-SATA dock and a spare 3.5" drive, just less frequently.

Working on gething a backup NAS running again, but I’m suddenly very reliant on the two Toshiba drives. I recently had another external SSD (not one of my main backups) start throwing errors and showing faults in SMART data. The Toshibas aren’t as old as the dying one, but it’s still got me nervous and I’m looking to expand my backup options.

Anyway, I’ve read the recommendations not to run a pool over USB and they make sense. I’m not trying to run a pool as part of the NAS, just as an external backup. I’m thinking of using M.2 SSDs in USB enclosures. In my fantasies, I’d like to have a mirrored pool of them if possible so they can scrub and fix any potential errors instead of just having to rewrite the whole drive if any issues crop up. As my budget allows, I’d probably get a second pair and have two rotating mirrored backups.

Does that seem like a working backup option? Any issues running a USB mirror for short time periods as an external backup? Would a mirror add any practical benefit, or would it be better just to make each drive its own pool and have more independent copies? I might try testing it with a cheap pair of flash drives, but any thoughts would be welcome.

As long as you’re still treating them like you do your single USB drive–plug in, import, do the thing, export, unplug–should be fine.

Okay, thanks. Do you think there’s really a benefit to mirroring backup drives, or is it just overkill?

There is a distinct benefit if you maintain higher archive depth on your backup target than on the source, because you can scrub a mirrored pool and recover from corruption intact. If you maintain more archive depth (snapshots going farther back in time) on the target than the source, then preserving the target intact through an episode of corruption is worthwhile.

However, if you have the same depth (eg 30 hourlies, 30 dailies, 3 monthlies) on both source and target, then arguably, there’s not much point in mirroring–if you experience corruption on the target, you shrug, perform a new full from the source, and you’re done, so you aren’t really missing much due to the inability to recover from a corrupt block by restoring from parity/redundancy.

This calculus can also come into play if a full takes an extremely long time. This probably doesn’t apply to your USB backup scenario, but let’s say instead you’ve got an offsite disaster recovery target. You still maintain the same archive depth policies on both source and target–30/30/3–but due to the bandwidth and latency limitations between source and target, your typical incremental takes only a couple of hours but a full takes days or even weeks to complete.

Once again, you’re looking at a scenario where it’s well worth it to add enough redundancy to prevent the need to overwrite your target with a full backup.

But this brings us back to you and your most likely scenarios. You want to use USB drives, and you’re (very properly) only plugging them in as you need to, when you need to. So there’s probably not a bandwidth limitation in play. And you’re talking about going from a single USB drive to a mirror of USB drives, so there’s probably no difference–or should be no difference–in archive depth between source and target either.

Assuming I’ve guessed your scenario correctly, a mirror vdev consisting of two USB drives probably is overkill that doesn’t buy you much. What you could do, if you’ve got an itch to improve your recoverability, is to instead alternate between your two USB drives–backup to drive A on Monday Wednesday and Friday, and to drive B on Tuesday, Thursday, Saturday and Sunday.

Now instead of one backup, you’ve got two backups, and you can survive several possible disaster scenarios that would wipe out your single-mirrored-backup setup. Perhaps your USB controller goes haywire, and wipes your backup drive–well, you only have one connected, so your other one is still okay. Or perhaps there’s a replication bug that destroys anything it touches–you have an additional chance to realize what’s going on before you’re toast. You get the idea.