Auf dem Proxmox Server ganz oben unter Datacenter – Backup sind die Jobs definiert.
Komisch, bei mir konnte ich bei einem bestehenden Job nichts mehr ändern.
Allerdings geht das dann in der Shell auf der CLI oder mittels SSH auf dem Server selbst.
Unter /etc/pve/jobs.cfg ist das editierbar.
Dort kann ich dann auch den Proxmox Backup Server (PBS) einstellen.
|
1 2 3 4 5 6 7 8 9 10 11 12 |
vzdump: backup-f117899c-62d2 schedule mon 10:05 enabled 1 mailnotification always mailto mail@dopper.de mode snapshot node virtserv120 notes-template {{guestname}} prune-backups keep-last=50 script /usr/local/bin/vzdump-hook-script storage ProxMoxBackup vmid 100,101,102,103,104 |
Mein Backup hook Script, mit dem ich vor und nach dem Backup ein paar Dinge erledigen muß / kann, liegt unter /usr/local/bin/vzdump-hook-script
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
#!/bin/bash # script um den Backupserver zu starten wenn ein Backup ansteht. Danach wieder Ausschalten # dieses Hook-Skript zum Backup-Auftrag hinzufügen: nano /etc/pve/jobs.cfg # by AME 05/2023 #----------------------- Variablen --------------------------------------------------------------------------------# PATH=/usr/sbin:${PATH} # SET-X damit die Ausfuehrung protokolliert wird # set -x storeid=ProxMoxBackup # Variable - um welches storage handelt es sich mac="a0:b3:cc:df:28:18" # MAC Adresse des PBS-Servers host="10.1.1.119" # Hostname oder IP des PBS-Servers nic=vmbr0 # Netzwerk-Karte über die WOL läuft #----------------------- Programmablauf ---------------------------------------------------------------------------# if [ "$1" == "job-init" ]; then # wenn ein backup job rein kommt dann pvesm set $storeid --disable 0 # der Storage wir enabled etherwake -i $nic $mac # starte den Backup-server sleep 100s # ping $host -c 3 < /dev/null & until [ "$act" == "true" ] # arbeite die loop-schleife ab bis die variable "ack" wahr ist do com=$(pvesm status --storage $storeid | tail -1); # Abfrage über den Status des Storage [[ "$com" =~ ($storeid+ +)(pbs+ +)(active|inactive) ]]; if [ "${BASH_REMATCH[3]}" == "active" ]; then # der server ist erreichbar also aktiv? echo "Backup-Server ist erreichbar" act=true # variable "act" wirt wahr um aus dem loop raus zukommen sleep 6s exit 0 else ((c=c+1)) # counter fi if [ $c == 180 ]; then # wenn der server nach 180 sec. nicht erreichbar ist exit 1 e> echo "ERROR Backup-Server ist nicht erreich bar" sleep 2s exit 1 fi sleep 1s done fi if [ "$1" == "job-end" ]; then # Wenn der Backup Job erledigt ist dann echo "Backup erledigt, so jetzt prüfen ob evtl. noch Backup Verification Jobs anlaufen" ################################################################################## # # Hier geht es darum dem Proxmox Backup Server (PBS) noch genügend Zeit zu geben, # evtl. anstehende Houskeeping Jobs (verify, usw...) abzuarbeiten # ################################################################################## # sleep 900 # Ersteinmal 15 Minuten abwarten ob der PBS Jobs anstartet input="running" answer="" # # In der folgenden Schleife wird im 10 Minuten Takt geprüft ob auf dem PBS noch ein Job läuft. # Falls nein, ist die Rückmeldung leer. Falls ja würde es ungefähr so aussehen ... # # ssh root@10.1.1.119 -p 22 "proxmox-backup-manager task list" # ┌──────────────────────────┬─────────┬──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬─────────┐ # │ starttime │ endtime │ upid │ status │ # ╞══════════════════════════╪═════════╪══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╪═════════╡ # │ Mon Jun 9 14:18:57 2025 │ │ UPID:proxmoxbackup:00000393:00000C35:00000003:6846D131:verificationjob:backuppool\x3av\x2d7d4fb127\x2d2f61:root@pam: │ running │ # └──────────────────────────┴─────────┴──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴─────────┘ # while [ "$input" == "running" ] do answer=$(ssh root@10.1.1.119 -p 22 "proxmox-backup-manager task list") if [[ $answer =~ "running" ]] # Findet sich in der Antwort "running" then # Ja, running in answer sleep 600 # echo "Looping ...." else echo "Now it is no longer running" input="nothing found" fi done echo "Das Ende ist erreicht" pvesm set $storeid --disable 1 # der Storage wird disabled, sonst ist er nicht erreichbar und> ssh root@$host -p 22 "poweroff < /dev/null &" # der Backupserver wird heruntergefahren fi exit 0 |
Und mittels etherwake -i vmbr0 „a0:b3:cc:df:28:18“ kann ich den Proxmox Backup Server aufwecken .

