====== Borg ====== Deduplizierendes Archivierungsprogramm mit Kompression und Verschlüsselung. BorgBackup (kurz: Borg) bietet: * Platzsparende Speicherung von Backups * Sichere, authentifizierte Verschlüsselung * Komprimierung: LZ4, zlib, LZMA, zstd (seit borg 1.1.4) * Einbindbare Sicherungen mit FUSE * Einfache Installation auf mehreren Plattformen: Linux, macOS, BSD... * Freie Software (BSD-Lizenz) * Unterstützt von einer großen und aktiven Open-Source-Gemeinschaft ===== Pakete ===== pacman -S borg python-llfuse Das ''borg'' Paket muss auf dem Backup-Server und dem Client installiert sein. ''python-llfuse'' dient zum Einbinden eines Backups. Both [[https://github.com/python-llfuse/python-llfuse/#the-python-llfuse-module=|llfuse]] als auch [[https://github.com/libfuse/pyfuse3|pyfuse3]] werden nicht mehr gepflegt - Stand 29.05.2022. ===== Backup ===== Wenn du dies einfach nur erledigen willst, gehe zu unserem [[de:backup:server#borg|Backup-Bereich]], der das borg script enthält. Unten findest du einige Kommandobeispiele/Informationen. ==== Repo erstellen ==== borg init --encryption=keyfile-blake2 --make-parent-dirs borg/ ==== Backup mit Verschlüsselung erstellen ==== borg create --stats --list --progress --verbose --filter AMEhsx --show-version --show-rc --exclude-caches --compression zstd,11 borg/::'{hostname}-{now}' .config/ --comment first_backup ==== Verschiedene Verschlüsselungsmethoden ==== === Schlüssel im Repository, Repokey-Verschlüsselung, BLAKE2b (oft schneller, seit Borg 1.1) === Der Schlüssel wird in Ihrem Backup-Repository abgelegt. borg init --encryption=repokey-blake2 /path/to/repo === Lokales Repository (keine Verschlüsselung) === borg init --encryption=none /path/to/repo === Schlüsseldatei === Der Schlüssel wird unter home dir gespeichert - ''~/.config/borg/keys/''. borg init --encryption=keyfile user@hostname:backup ==== Remote / SSH mit Speicherplatzkontingent ==== borg init --encryption=keyfile-blake2 --storage-quota (e.g. 5G, 1.5T) --make-parent-dirs ssh://username@remote.host.address:$port/~/borg ==== Liste / Einhängen / Aushängen von Backups ==== borg list /path mkdir /path/mount/ borg mount .::Tuesday /path/mount/ borg mount repo/ /path/mount/ borg umount .::Tuesday /path/mount/ borg umount repo/ /path/mount/ Der Pfad muss für borg beschreibbar sein! Ein im Home-Ordner erstellter Pfad bedeutet, dass der Mount-Ordner für den Home-Benutzer beschreibbar sein muss. ==== Unterschied zwischen zwei Backups ==== borg diff repo/::archive-2022-02-14T23:18:18 archive-2022-02-14T23:26:10 ==== Delete ==== Wenn du ein Backup endgültig löschen willst, führe den Befehl ohne ''%%--%%dry-run'' aus. borg delete --dry-run --stats repo/ borg delete --dry-run --stats repo/::archive-2022-02-14T23:26:10 ==== Info ==== borg info repo/ borg info repo/::archive-2022-02-14T23:26:10 ==== Wiederherstellung/Extrahierung ==== Wenn du wiederherstellen willst, führe den Befehl ohne ''%%--dry-run%%'' aus. borg extract --dry-run repo/::archive-2022-02-14T23:26:10 ==== Daten prüfen/verifizieren ==== borg check repo/ borg check repo/::archive-2022-02-14T23:26:10 borg check --verify-data repo/ borg check --verify-data repo/::archive-2022-02-14T23:26:10 ==== Borg Webseite ==== Weitere Informationen sind auch auf der Website von [[https://borgbackup.readthedocs.io/en/stable/usage/general.html|borg]] selbst zu finden.