Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:borgbackup

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
admin_grundlagen:borgbackup [2022/12/03 07:54] – angelegt ingo_wichmannadmin_grundlagen:borgbackup [2024/08/08 15:29] (aktuell) – [Restore] ingo_wichmann
Zeile 1: Zeile 1:
 +Features, die mir in Borg fehlen:
 +  * Client kann Backups löschen, der append-only Mode auf dem Server löst das Problem nicht. [[https://packages.debian.org/bullseye/restic|restic]] kann das. 
 +  * der tar-export beim Wiederherstellen kann nicht mit ACLs, XATTRS und BSD-Flags umgehen.
 +
 ====== Backup Server ====== ====== Backup Server ======
 Voraussetzung:  Voraussetzung: 
Zeile 11: Zeile 15:
   touch /srv/borg/.ssh/authorized_keys   touch /srv/borg/.ssh/authorized_keys
   chmod 600 /srv/borg/.ssh/authorized_keys   chmod 600 /srv/borg/.ssh/authorized_keys
- +  chown -R borg:borg /srv/borg 
-====== Backup Node ======+====== Backup Client ======
 Pakete: Pakete:
   * Debian (11): ''borgbackup''   * Debian (11): ''borgbackup''
Zeile 18: Zeile 22:
 ===== SSH Schlüsselpaar ===== ===== SSH Schlüsselpaar =====
 SSH Schlüsselpaar erzeugen: SSH Schlüsselpaar erzeugen:
-  ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_borgbackup -C 'borgbackup node1'+  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. Public-Key auf dem Backup Server in der Datei ''/srv/borg/.ssh/authorized_keys'' hinterlegen.
  
-===== Archiv anlegen ======+===== Backup Repository anlegen ======
 als Benutzer root: als Benutzer root:
-  borg --rsh='ssh -i ~/.ssh/id_ed25519_borgbackup' init --encryption none borg@backupserver.example.org:/srv/borg/node1.example.org+  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
  
 ==== Archiv anzeigen =====   ==== Archiv anzeigen =====  
-  borg --rsh='ssh -i ~/.ssh/id_ed25519_borgbackup' list borg@backupserver.example.org:/srv/borg/node1.example.org+  borg list 
 +(ist jetzt noch leer)
  
 ===== ssh Zugang einschränken ===== ===== ssh Zugang einschränken =====
Zeile 35: Zeile 42:
  
 ===== Backup erzeugen ===== ===== Backup erzeugen =====
-  borg --rsh='ssh -i ~/.ssh/id_ed25519_borgbackup' create -x --compression zstd --numeric-owner borg@backup-brahma.lxht.de:/srv/borg/brahma.kramskrims.de::brahma-{now:%Y-%m-%d} /+  borg create -x --compression zstd --numeric-ids ::client1-{now:%Y-%m-%d} / 
 + 
 +==== als Cronjob ==== 
 +<file crontab /etc/cron.d/borgbackup> 
 +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} / 
 +</file> 
 + 
 +===== Restore ===== 
 + 
 +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 
 + 
 +===== Wie gehts weiter? ===== 
 +Wenn das alles geklappt hat, dann gleich noch mal von vorne ohne ''--encryption none''. Schlüssel gut aufbewahren! 
 + 
 +Und den cronjob durch [[https://packages.debian.org/bullseye/borgmatic|borgmatic]] ersetzen.  
 + 
  
admin_grundlagen/borgbackup.1670054055.txt.gz · Zuletzt geändert: 2022/12/03 07:54 von ingo_wichmann