Shutdown des PBS nachdem alle VMs gesichert wurden?

in dem Fall vielleicht einfach per cron Job den Script Teil der den pbs aktiviert 3 Min vor dem eigentlichen Backup Job starten damit der dann hochgefahren ist, am Ende kannst den ja dann wieder disablen per hook Script
 
in dem Fall vielleicht einfach per cron Job den Script Teil der den pbs aktiviert 3 Min vor dem eigentlichen Backup Job starten damit der dann hochgefahren ist, am Ende kannst den ja dann wieder disablen per hook Script
Ich habe gedacht, storage aktivieren, pbs aufwecken, mit "hook script" könnte auch funktionieren. Leider nicht...
Währe logisch im vzdump den job-start hook Abruf ganz vorne schieben, vor storage prüfungen...
 
Last edited:
Hi,
Ich habe gedacht, storage aktivieren, pbs aufwecken, mit "hook script" könnte auch funktionieren. Leider nicht...
Währe logisch im vzdump den job-start hook Abruf ganz vorne schieben, vor storage prüfungen...
das war technisch nicht einfach möglich um rückwarts-kompatibel zu bleiben. Allerdings gibt es jetzt einen job-init-Hook (mit pve-manager >= 7.1-11).
 
Bei mir funktioniert es leider nicht.

Es sieht so aus, vzdump hat volgende grundsätzliche Voraussetzungen (vor dem "job-start" Hook):
1. aktivierte Storage, sonst Fehler: "TASK ERROR: could not activate storage 'pbs-test': storage 'pbs-test' is disabled"
2. erreichbare Storage, sonst Fehler: "TASK ERROR: could not activate storage 'pbs-test': pbs-test: error fetching datastores - 500 Can't connect to pbs-test.lan:8007 (No route to host)"

vzdump Befehl aus Proxmox Task viewer:
vzdump 100 --mailnotification always --mode snapshot --prune-backups 'keep-last=7' --storage pbs-test --all 0 --script /root/bin/backup/vzdump-hook-script --node pve

vzdump-hook-script:
#!/bin/bash if [ "$1" == "job-start" ]; then etherwake XX:YY:ZZ:XX:YY:ZZ ping -W 20 -c 1 pbs-test.lan /usr/sbin/pvesm set pbs-test -disable false fi exit 0
mit pve-manager 7.1-11 und "job-init" Hook funktioniert:
vzdump-hook-script:
#!/bin/bash if [ "$1" == "job-init" ]; then etherwake XX:YY:ZZ:XX:YY:ZZ ping -W 20 -c 1 pbs-test.lan /usr/sbin/pvesm set pbs-test -disable false fi exit 0
 
  • Like
Reactions: pascal585
mit pve-manager 7.1-11 und "job-init" Hook funktioniert:
vzdump-hook-script:
#!/bin/bash if [ "$1" == "job-init" ]; then etherwake XX:YY:ZZ:XX:YY:ZZ ping -W 20 -c 1 pbs-test.lan /usr/sbin/pvesm set pbs-test -disable false fi exit 0
Bei mir funktioniert das ganz hervorragend. Dankeschön!
Weißt du (oder jemand anders hier) wie man den Backup-Server nach Abschluss des Backups mittels hook-script auch wieder herunterfährt?
 
Bei mir funktioniert das ganz hervorragend. Dankeschön!
Weißt du (oder jemand anders hier) wie man den Backup-Server nach Abschluss des Backups mittels hook-script auch wieder herunterfährt?
mit "systemctl suspend" über ssh
zb.:
ssh root@pbs -i ~/.ssh/id_rsa_pbs 'systemctl suspend'
 
Also

Code:
if [ "$1" == "job-end" ]; then
ssh root@pbs -i ~/.ssh/id_rsa_pbs 'systemctl suspend'
fi

richtig?
 
Hallo,

ich versuche gerade das Script auf den PBS zu adaptieren, da dieser nicht mit dem PVE verbunden ist.

Im Verzeichnis etc/proxmox-backup/ in der Datei "sync.cfg" habe ich versucht den Script-Aufruf einzubauen, was mir der BPS aber sogleich übel genommen hat.
Code:
script /usr/local/bin/vzdump-hook-script

script.jpg

So wie ich die Fehlermeldung interpretiert habe, fängt der BPS mit dem Befehl "script" nichts an.

Die Datei "vzdump-hook-script" im Verzeichnis "/usr/local/bin/" habe ich schon angelegt.

Da ich absoluter Anfänger bin, freue ich mich, hier Unterstützung zu erhalten.

Ziel ist es, den (2.) BPS nach der Synchronisierung mit dem 1. BPS automatisch herunter zu fahren.

Falls weiter Informationen notwendig sind, bitte melden.

Danke für die Hilfe im Voraus!

Grüßle
Stefan
 
es gibt keine hook scripts auf PBS seite. eine moeglichkeit waere es statt einem sync job mit schedule selber einen systemd timer oder cron job zu definieren, der mit proxmox-backup-manager pull das pullen erledigt und anschliessend einen shutdown einleitet.
 
  • Like
Reactions: Stefan33
Dankeschön für deine Hilfe!

Ich habe es hinbekommen, den sync-Job manuell zu starten :)

Wie bekomme ich es hin, dass der sync-Job nach dem Start des PBS mit ein paar Sekunden Verzögerung automatisch startet?

Wo plaziere ich den Befehl zum Herunterfahren des BPS, direkt im Crohn-Job nach dem Sync-Aufruf?
Wenn ja, wird dieser dann erst abgeschlossen, bevor der Befehl zum Herunterfahren aktiviert wird?
 
@reboot als zeit und ein entsprechender delay (z.b. mit sleep) am start deines skripts sollte funktionieren (und entsprechend shutdown nach dem pull aufruf im skript)
 
  • Like
Reactions: Stefan33
Danke für die Hilfe!

Sodele, habe es nun soweit hinbekommen, dass nach dem Start die Synchronisation läuft :) .

Allerdings erhalte ich über diesen Weg keine E-Mail, ob die Synchronisation erfolgreich war.
Gibt es dafür auch eine Lösung?

Muss ich außer der Synchronisation noch andere Dinge anstoßen, wie etwa eine Überprüfung oder Bereinigung, da die Maschine ja nur während der Synchronisation läuft?
 
du kannst andere tasks (z.b. prune, GC, verify) auch im selben skript laufen lassen - fuer prune sh. allerdings https://bugzilla.proxmox.com/show_bug.cgi?id=4341

cron schickt normalerweise eine mail, wenn das ausgefuehrte programm output auf stderr liefert oder mit nicht-erfolg exitcode beendet. du kanns natuerlich auch fuer success fall selber beliebig mails verschicken (auch fuer einzelne teile des skripts).
 
  • Like
Reactions: Stefan33
@twl Erstmal moin und vielen Dank für deinen Beitrag!
Bei mir Klappt theorethisch alls, jedoch bekomme ich an sich einen Fehler:

Fehler im Proxmox Task:
INFO: /usr/local/bin/vzdump-hook-script: line 10: syntax error near unexpected token `fi' INFO: /usr/local/bin/vzdump-hook-script: line 10: `fi'

Ich habe jedoch im Script nur die Einträge geändert:

Code:
#!/bin/bash

if [ "$1" == "job-init" ]; then
  etherwake (Meine MAC)
  ping 192.168.178.33 -c 60 < /dev/null &
fi

if [ "$1" == "backup-start" ]; then
fi

if [ "$1" == "backup-end" ]; then
fi

if [ "$1" == "job-end" ]; then
  ssh root@192.168.178.33 "poweroff < /dev/null &"
fi

exit 0

Wenn ich: sh /usr/local/bin/vzdump-hook-script starte erhalte ich den selben fehler.
 
zwischen 'then' und 'fi' muss etwas sein - z.b. eine zeile mit ':;' (oder du entfernst / kommentierst das ganze if konstrukt dass dich nicht interessiert).
 
@fabian Vielen dank! Dennoch bekomme ich nun bei der sh Ausführung:

/usr/local/bin/vzdump-hook-script: 3: [: unexpected operator /usr/local/bin/vzdump-hook-script: 8: [: unexpected operator

Hier das Angepasste Script:

Code:
#!/bin/bash

if [ "$1" == "job-init" ]; then
  etherwake (Meine Mac)
  ping 192.168.178.33 -c 60 < /dev/null &
fi


if [ "$1" == "job-end" ]; then
  ssh root@192.168.178.33 "poweroff < /dev/null &"
fi

exit 0



Ich habe bereits nach Leerzeichen und co. geschaut, aber irgendwie bekomme ich das Script nicht zum Laufen. : (
 
@fabian Vielen dank! Dennoch bekomme ich nun bei der sh Ausführung:

/usr/local/bin/vzdump-hook-script: 3: [: unexpected operator /usr/local/bin/vzdump-hook-script: 8: [: unexpected operator

Hier das Angepasste Script:

Code:
#!/bin/bash

if [ "$1" == "job-init" ]; then
  etherwake (Meine Mac)
  ping 192.168.178.33 -c 60 < /dev/null &
fi


if [ "$1" == "job-end" ]; then
  ssh root@192.168.178.33 "poweroff < /dev/null &"
fi

exit 0



Ich habe bereits nach Leerzeichen und co. geschaut, aber irgendwie bekomme ich das Script nicht zum Laufen. : (
Edit: Es war mein Fehler, es funktioniert nur in Proxmox und nicht via sh Befehl. :cool:
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!