Restic: Multi-User Syncthing Backup Strategy
Überblick
Overview
DiesesThis Dokumentdocument beschreibtcovers diethe Sicherungbackup vonof Multi-User-Syncthing-Datenmulti-user ausSyncthing demdata from the Syncthing-LXC (ID: 130) übervia dasthe Vault-LXC (ID: 150). WirWe nutzenutilize eina einziges,single vereinheitlichtesunified Restic-RepositoryRestic aufrepository demon NAS,the umNAS dieto Deduplizierungmaximize überdeduplication gemeinsameacross Dateiencommon zwischenfiles denshared Benutzernbetween zu maximieren.users.
SpeicherkonfigurationStorage Configuration
FürIndividual jedenZFS Benutzersubvolumes werdenfor einzelneeach ZFS-Subvolumesuser alsare passed to the Vault-LXC as Read-Only-Mount-Points anmount das Vault-LXC weitergegeben.points.
| UserA | tank/subvol-130-disk-2 |
/source/sync-usera |
| UserB | tank/subvol-130-disk-3 |
/source/sync-userb |
| UserC | tank/subvol-130-disk-4 |
/source/sync-userc |
# AufExecuted demon Proxmox-Proxmox Host ausgeführt,to ummap die Datenträger zu mappendisks
pct set 150 -mp132 /tank/subvol-130-disk-2,mp=/source/sync-usera,ro=1
pct set 150 -mp133 /tank/subvol-130-disk-3,mp=/source/sync-userb,ro=1
pct set 150 -mp134 /tank/subvol-130-disk-4,mp=/source/sync-userc,ro=1
DasThe vereinheitlichteUnified Backup-Backup Script
/root/scripts/backup-syncthing.sh (Vault-LXC):
#!/bin/bash
# Auth & NetzwerkNetwork (direkteDirect 2.5GbE-Verbindung)5GbE Pipe)
export RESTIC_REPOSITORY="rest:http://vault-user:Pass123@10.1.1.2:8000/syncthing"
export RESTIC_PASSWORD="Sync_Encryption_Key_44"
# BenutzerDefine undusers ihreand Quellverzeichnissetheir definierensource directories
declare -A users=(
["usera"]="/source/sync-usera"
["userb"]="/source/sync-userb"
["userc"]="/source/sync-userc"
)
# 1. IndividuelleIndividual Benutzer-User Backups (ermöglichtEnables granularegranular Wiederherstellung)recovery)
echo "StarteStarting Syncthing-Syncthing Backups..."
# SchleifeLoop überthrough Benutzerusers undand Backupsperform durchführenbackups
for user in "${!users[@]}"; do
source_dir="${users[$user]}"
restic backup "$source_dir" --tag "user:$user" --host "syncthing-srv"
done
# 2. GlobalesGlobal PruningPrune (letzteKeep last 7 Tagedays fürfor alleall Benutzer behalten)users)
# LokalRun auflocally demon NAS ausführen,if fallsserver Serveris imin --append-only-Modusonly istmode
restic forget --keep-within 7d --prune
Administration & WiederherstellungRecovery
SoHow listestto dulist Dateienfiles fürfor einena bestimmtenspecific Benutzer auf:user:
UmTo nursee dieonly BackupsSarah's vonbackups Sarahwithout zucluttering sehen,the ohnelist diewith anderenother Benutzer zu vermischen:users:
restic snapshots --tag "user:sarah"
SoHow stellstto durestore diea Datensingle einesuser's einzelnen Benutzers wieder her:data:
FallsIf Werner versehentlichaccidentally einendeletes Ordnera löscht,folder, kannstyou ducan gezieltrestore seinenhis neuestenlatest Snapshotsnapshot wiederherstellen:specifically:
restic restore latest --tag "user:werner" --target /tmp/restore-werner
WartungshinweiseMaintenance Notes
VorteilDeduplicationder Deduplizierung:Advantage:WennIf Carstenundand Sarahdieselbeboth2-GB-ISOdownloadherunterladen,thespeichertsame 2GB ISO, ResticdieonlyBlöckestoresimtheNAS-Repositoryblocksnur einmalonce–indasthespartNASerheblichrepository,Platz.saving significant space.Integritätsprüfungen:Integrity Checks:Führe einmal im MonatRunrestic checkvomonce a month from the Vault-LXCaus,toumensuresicherzustellen,thedassNASdiedataNAS-Datenremainsnicht beschädigt sind.uncorrupted.
Restic Guide: Backing Up Multiple PCs
DiesesThis Videovideo erklärt,explains wiehow manto mitmanage Tagsa undsingle Hostnamenrepository einfor einzigesmultiple Repositorysources fürusing mehreretags Quellenand verwaltethostnames, –which genauis so,exactly wiehow duyou deineare einzelnenorganizing Syncthing-Benutzeryour organisierst.individual Syncthing users.