Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:borgbackup

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
admin_grundlagen:borgbackup [2022/12/03 07:54]
ingo_wichmann angelegt
admin_grundlagen:borgbackup [2022/12/05 12:10] (aktuell)
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 12: Zeile 16:
   chmod 600 /​srv/​borg/​.ssh/​authorized_keys   chmod 600 /​srv/​borg/​.ssh/​authorized_keys
  
-====== 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 ​---compression zstd --numeric-owner ::​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-owner ​::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 
 + 
 +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