BorgBackup (Debian): Unterschied zwischen den Versionen
Matt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Matt (Diskussion | Beiträge) |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 53: | Zeile 53: | ||
Sinnvoll bei großen Uploads: | Sinnvoll bei großen Uploads: | ||
To limit upload (i.e. borg create) bandwidth, use the <code>-- | To limit upload (i.e. borg create) bandwidth, use the <code>--upload-ratelimit RATE</code> in KiB/s | ||
== Informationen über Backupinhalte == | == Informationen über Backupinhalte == |
Aktuelle Version vom 13. Mai 2025, 17:26 Uhr
Dieser Artikel beschäftigt sich damit, wie man in Debian mit BorgBackup Backups erstellt und was es zu beachten gibt.
Quellen:
- https://borgbackup.readthedocs.io/en/stable/
- https://community.hetzner.com/tutorials/install-and-configure-borgbackup
Der Artikel bezieht sich auf Debian 12.10 mit BorgBackup 1.2.4 Client- und Serverseitig.
Installation
# apt-get install borgbackup
Sudo und Superuser (Debian) nicht vergessen
Backup Repository lokal initiieren
Zunächst muss ein Repository initiiert werden, z. B. auf der lokalen Maschine:
borg init --encryption=none|repokey|keyfile /path/to/repo
Defaultmäßig wird --encryption=repokey
verwendet. Dabei wird das Keyfile mit einem Passwort versehen und im Repository gespeichert. Dadurch ist für eine Wiederherstellung nur das Passwort für das Keyfile notwendig.
Mit --encryption=keyfile
wird das Keyfile auf der lokalen Maschine im Verzeichnis ~/.config/borg/keys/
gespeichert und ebensho mit einem Passwort gesichert wird.
Die Verschlüsselung kann mit --encryption=none
deaktiviert werden.
Initiierung eines Repository auf einer entfernten Maschine:
Backup Repository Remote initiieren
Können auf zwei Arten angelegt werden:
sshfs
oder mit Borg auf dem Remote-Repository installiert.
Beispiel für absoluten Pfad auf der Remote-Maschine:
borg init ssh://server.domain.tld:port/absolute_path/to/repo borg init ssh://user@server.domain.tld:port/absolute_path/to/repo
Beispiel für relativen Pfad auf der Remote-Maschine:
borg init ssh://server.domain.tld:port/./relative_path/to/repo
Backup erstellen
Beim erstellen eines Backups wird ein neues Archiv in einem Repository erstellt. Der Archivname und die zu archivierenden Daten müssen angegeben werden:
borg create -s -v --list /path/to/repo::my-files \ ~/Documents \ ~/src \ --exclude '*.pyc' borg create -s --progress /path/to/repo::my-files \ ~/Documents \ ~/src \ --exclude /path1 \ --exclude '*.pyc'
-s
Stats
--progress
Aktuellen Fortschritt mit anzeigen
--list
Liste der Dateien ausgeben
Sinnvoll bei großen Uploads:
To limit upload (i.e. borg create) bandwidth, use the --upload-ratelimit RATE
in KiB/s
Informationen über Backupinhalte
borg list REPOSITORY # List archives in REPOSITORY borg list REPO::ARCHIVE # List contents of ARCHIVE in REPO borg list ssh://user@server:port/PATHTOREPO # List contents of remote REPOSITORY via SSH borg info REPO::ARCHIVE # Show details for ARCHIVE such as time and size borg info ssh://user@server:port/REPO::ARCH # Show details for ARCHIVE such as time and size # from remote REPOSITORY accessed via SSH
Backup wiederherstellen
borg extract --info REPO::ARCHIVE # extract ARCHIVE to current directory with debug level info / verbose (-v) borg extract --list REPO::ARCHIVE # extract ARCHIVE to current directory with verbose list borg extract --list -n REPO::ARCHIVE # dry-run ARCHIVE to current directory with verbose list borg extract --list --dry-run REPO::ARCHIVE # dry-run with verbose list
Archiv mounten
Ein Archiv kann ins Dateisystem gemountet werden.
Verzeichnis erstellen und gesamtes Repository mounten:
mkdir ~/borgmount borg mount REPO ~/borgmount
Alternativ kann auch ein einzelnes Archiv gemountet werden:
borg mount REPO::ARCHIVE
Unmounten:
borg umount ~/borgmount
Key export und import
Export auf Papier:
borg key export --paper /path/to/repo /export/to/path
Import von Papier:
borg key import --paper /path/to/repo /import/from/path
.