Proxmox Backup Server/Client Host Backup einrichten

man kann mit dem PBS auch Host Backup von diversen Maschinen erstellen, benötigt wird der Proxmox-Backup-Client, den kann man durch hinzufügen des Repository installieren oder manuell von einer externe Quelle

Debian 11 / Ubuntu 22
Repo hinzufügen von Debian 11 , funktioniert auch für Ubuntu 22

curl -O https://enterprise.proxmox.com/debian/proxmox-release-bullseye.gpg
mv proxmox-release-bullseye.gpg /etc/apt/trusted.gpg.d
echo "deb http://download.proxmox.com/debian/pbs-client bullseye main" |  tee /etc/apt/sources.list.d/pbs-client.list
apt update

für Ubuntu 22 ist noch ein zusätzliches Paket erforderlich

wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.0g-2ubuntu4_amd64.deb
dpkg -i libssl1.1_1.1.0g-2ubuntu4_amd64.deb
apt install proxmox-backup-client

Debian 12 / Ubuntu 24
Repo hinzufügen von Debian 12, funktioniert auch auf Ubuntu 24

curl -O https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg
mv proxmox-release-bookworm.gpg /etc/apt/trusted.gpg.d
echo "deb http://download.proxmox.com/debian/pbs-client bookworm main" |  tee /etc/apt/sources.list.d/pbs-client.list
apt update && apt install proxmox-backup-client

oder von alternativ Quelle, dort die passende Architektur aussuchen, es wird nur proxmox-backup-client_x.x.x_ benötigt.

als Beispiel für ein arm32v7, ist leider nur bis Version 2.1.5 verfügbar, funktioniert aber trotzdem mit dem aktuellen PBS 3.3.0

cd /opt
wget https://github.com/ayufan/pve-backup-server-dockerfiles/releases/download/v2.1.5/proxmox-backup-client-v2.1.5-arm32v7.tgz
tar xvfz proxmox-backup-client-v2.1.5-arm32v7.tgz
mv proxmox-backup-client-v2.1.5 /usr/local/bin/pbs_client

jetzt muss auf dem PBS erstmal ein API-Token für den Client erstellt werden


image
image

Im PBS den Datastore auswählen und Berechtigung vergeben:

Beispiel Konfiguration für den Client arm32v7

die 3 Zeilen müssen an eigene Umgebung angepasst werden

export PBS_REPOSITORY=root@pam!client1@IP_vom_Backup_Server:Name_Datastore
export PBS_PASSWORD=ab7ebb44-88f9-456c-bc4b-c17acb4683e1 # client API-Token
export PBS_FINGERPRINT=dein-PBS-Fingerprint

/usr/local/bin/pbs_client/pbs_backup.sh

#!/bin/bash

export PBS_REPOSITORY=root@pam!client1@10.0.1.10:datastore-name
export PBS_PASSWORD=ab7ebb44-88f9-456c-bc4b-c17acb4683e1
export PBS_FINGERPRINT=dein-PBS-Fingerprint

export PBS_REPOSITORY
export PBS_PASSWORD
export PBS_FINGERPRINT

cd /usr/local/bin/pbs_client
./proxmox-backup-client.sh backup root.pxar:/ --exclude /swap*

crontab

40 23 * * * root /usr/local/bin/pbs_client/pbs_backup.sh

Beispiel für ein PVE Host inklusive Verzeichnis /etc/pve

/root/pbs-backup_pve.sh

#!/bin/bash

export PBS_REPOSITORY=root@pam!client1@10.0.1.10:datastore-name
export PBS_PASSWORD=ab7ebb44-88f9-456c-bc4b-c17acb4683e1
export PBS_FINGERPRINT=dein-PBS-Fingerprint

export PBS_REPOSITORY
export PBS_PASSWORD
export PBS_FINGERPRINT

proxmox-backup-client backup root.pxar:/ --include-dev /etc/pve

crontab

40 23 * * * root /root/pbs-backup_pve.sh