Features, die mir in Borg fehlen:
useradd -rmd /srv/borg -s /bin/sh -p '*' borg mkdir -m 700 /srv/borg/.ssh touch /srv/borg/.ssh/authorized_keys chmod 600 /srv/borg/.ssh/authorized_keys chown -R borg:borg /srv/borg
Pakete:
borgbackup
SSH Schlüsselpaar erzeugen:
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_borgbackup -C 'borgbackup client1'
Public-Key auf dem Backup Server in der Datei /srv/borg/.ssh/authorized_keys
hinterlegen.
als Benutzer root:
export BORG_REPO='borg@backupserver.example.org:/srv/borg/client1.example.org' export BORG_RSH='ssh -i ~/.ssh/id_ed25519_borgbackup' borg init --encryption none
borg list
(ist jetzt noch leer)
command="borg serve --restrict-to-path /srv/borg",restrict ssh-ed25519 AAAA…
borg create -x --compression zstd --numeric-ids ::client1-{now:%Y-%m-%d} /
BORG_REPO='borg@backupserver.example.org:/srv/borg/client1.example.org' BORG_RSH='ssh -i ~/.ssh/id_ed25519_borgbackup' 13 23 * * * root borg create -x --compression zstd --numeric-ids ::client1-{now:\%Y-\%m-\%d} /
Backup auf einem anderen Rechner wiederherstellen.
Zugriff auf den Borg-Server mit dem aktuellen Benutzer:
export BORG_REPO='backupserver.example.org:/srv/borg/client1.example.org'
borg auf dem Server als Benutzer borg ausführen:
export BORG_REMOTE_PATH='sudo -u borg borg'
Backups anzeigen:
borg list borg list ::client1-2024-08-08
Daten aus Backup wiederherstellen:
mkdir /tmp/restore cd /tmp/restore borg extract --progress ::client1-2022-12-03
Wenn das alles geklappt hat, dann gleich noch mal von vorne ohne –encryption none
. Schlüssel gut aufbewahren!
Und den cronjob durch borgmatic ersetzen.