Backupservertje maken


Ik heb in de kelder een fijn linux systeempje draaien met daarop home assistant, unifi en immich als belangrijkste zaken, waarvan Immich toch echt belangrijk aan het worden is voor me (babyfoto’s kwijtraken is vervelend). Ik wil dus iets gaan doen met backups, hoewel ik echt geen idee heb hoe of wat (vroeger had ik gewoon Apple TimeMachine en dat ‘werkte gewoon’ :slight_smile: ).

Anyway: voor nu heb ik een tweede linux doosje gemaakt van een oude Mac Mini met een SSDtje er in. Tailscale staat er al op zodat ik er makkelijk in kan, waar het ding ook staat (de bedoeling is dat deze machine bij de schoonfamilie gaat staan). Binnenkort maar eens rommelen met Borg, ik geloof dat dat nu de gold standard is om backupjes mee te maken.

nice, I am also experimenting on Proxmox backup server so I can backup the other two local servers I have.

This is the last step before switching from google photos to immich… because I really don’t want to lose my photos…

I currently run my uploading to immich parallel with Apple Photos (the Immich app syncs my photos after a short while). I wouldn’t trust my Immich setup enough currently to be a single point of failure.

Ah, you’re backing up the VM’s from Proxmox?

Currently, I borg-backup the content on the drive to a StorageBox in Helsinki.

Zo, een tweede avond en ik heb iets denk ik werkend. Maar het te backuppen is een vrij forse berg (60GB ongeveer) dus die draait wel de hele nacht.

Na wat heen-en-weer op IRC toch voor Borg gekozen en met behulp van een taalmodel vernoemd naar tweelingen de boel aan elkaar geknoedeld. Shellscriptje maakt de backup, een systemd timer voor het dagelijks aanroepen van de backup. Retentie is ingesteld, keys zijn veiliggesteld in de passwordmanager.

Morgen oid maar op het dooie akkertje checken of de backup gelukt is. We gaan het zien!

De volgende ochtend trof ik een iets meer gevulde disk op de backupserver en leuke berichten in de logboeken:

Volgens mij gaat dit helemaal zoals bedoeld. Volgende stap binnenkort gaat zijn om de backup eens terug te zetten op een machine en te kijken of het inderdaad een werkzame backup is.

Met het risico op dat dit al gesuggereerd is of dat je het zelf al gezien hebt, heb je wellicht al gekeken naar borgmatic? Ik ben daar zelf wel erg blij mee, en scheelt het weer zelf bijhouden van een bash scriptje en systemd unit & timer. Heeft ook integratie met verschillende monitoringdingen (moet ik zelf nog eens aan beginnen…)

1 Like

Ik kende het nog niet, zou vast wel werken. Maar wat ik nu heb geklooid werkt al, dan is de moeite van een extra tooltje uitzoeken wel heel groot meteen.

Dat tooltje word door wel door tenminste 2 van je vrienden gebruikt :slight_smile:

Hoe heb je het nu gedaan?

@Wheeze dit samen met Ome Gemini geknutseld:

#!/bin/bash
set -e

# --- CONFIGURATIE ---
export BORG_PASSPHRASE='passphrase'
export BORG_RSH="ssh -i /root/.ssh/id_ed25519_borg"

IMMICH_DIR="/diskpool/immich-app"
DEST_HOST="host"
REPOSITORY="borg@${DEST_HOST}:/backups/immich-borg"
ARCHIVE_NAME="immich-$(date +%Y-%m-%d_%H:%M)"

echo "=== Start Immich Borg Backup ==="

borg create \
  --verbose \
  --stats \
  --compression zstd \
  --exclude "$IMMICH_DIR/thumbs" \
  --exclude "$IMMICH_DIR/encoded-video" \
  "$REPOSITORY::$ARCHIVE_NAME" \
  "$IMMICH_DIR"

borg prune \
  --list \
  --keep-daily=7 \
  --keep-weekly=4 \
  --keep-monthly=12 \
  "$REPOSITORY"

borg compact "$REPOSITORY"

echo "=== Immich backup succesvol afgerond! ==="

Belangrijk om te weten is (als je een recente versie van borg draait) dat je na een borg prune ook nog borg compact moet draaien om ook daadwerkelijk weer ruimte te maken. Zie borg prune man page

1 Like

Tof, toegevoegd aan het scriptje: borg compact "$REPOSITORY"

Hoe weet je dit? :slight_smile:

1 Like