Jump to content

APC PowerChute Shutdown Script


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo zusammen,

 

ich versuche seit geraumer Zeit ein PowerShell Script in unsere APC PowerChute einzubinden. Nur leider scheint das nicht so wirklich zu funktionieren.

 

Ich möchte, dass die CMD Datei (was anderes kann PowerChute scheinbar nicht ausführen) eine PowerShell Datei - die im gleichen Verzeichnis liegt ausführt, die dann die Aktionen durchführt. In native-batch lässt sich das, was ich möchte nicht umsetzen.

 

Meine CMD-Datei sieht aktuell so aus. Nur eine Zeile:

powershell -command .\test.ps1

In der "test.ps1" steht dann der eigentliche Code drin. Wenn ich die CMD-Datei mit einem doppelklick ausführe tut sie auch das was sie soll -> Die CMD-Datei startet die PS1 Datei und die läuft durch.

 

Wenn ich die CMD-Datei nun aber per PoerChute starte, läuft die CMD-Datei auch durch, die ps1-Datei wird aber scheinbar übersprungen. Lustiger weise werden aber die CMD-Commands, die nach dem PS-Aufruf sind noch ausgeführt.

 

Den Dienst habe ich bereits entsprechend angepasst.

image.png.90951b184f5123cb460ccfcaad04c0e0.png

 

 

Jemand eine Idee, wie ich das lauffähig bekommen kann?

 

Grüße und Danke!

Link zu diesem Kommentar
vor einer Stunde schrieb testperson:

Ansonsten würde ich noch "-NoProfile" nutzen. Testweise kannst du mal "-ExecutionPolicy Bypass" versuchen.

Hab jetzt mal den Holzhammer raus geholt. Funktioniert leider weiterhin nicht

 

powershell -ExecutionPolicy Bypass -NoProfile  -File "C:\Program Files (x86)\APC\PowerChute Business Edition\agent\cmdfiles\test.ps1"

 

Grüße!

Link zu diesem Kommentar

Hallo,

eine Idee wäre es eine Batch zu starten, aus der eine PS mit entsprechenden Berechtigungen instanziert wird.

Hatte bei einer Dell UPS (gibt es zwischenzeitlich nicht mehr) ähnliche Probleme und mir damals über die Hauruckaktion geholfen.

 

Batchdatei startet PowerShell Skript "Anlauf Skript"

"Anlauf Skript"  startet separate Instanz von PowerShell mit entsprechenden Credentials - die Credentials wurden verschlüsselt übermittelt.

Dahinter liefen dann die eigentlichen Skript der mehrere Shutdown Skripte (Threads) parallel angestartet hat.

 

Edit: Die Batch war sehr einfach:


echo Shutdown of all VM’s and ESX hosts is launched at >> C:\tools\usv_shutdown\log\alert.txt
echo %date% %time% >> C:\tools\usv_shutdown\log\alert.txt
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "& 'C:\tools\usv_shutdown\runasAdministrator.ps1'" -PSConsoleFile "C:\tools\usv_shutdown\vim.psc1"

 

 

bearbeitet von PowerShellAdmin
Link zu diesem Kommentar

Hallo zusammen

 

vor 45 Minuten schrieb Dukel:

Ohne Logs was genau schief geht wird es schwirig. 

Leider bekomme ich von der APC ebenfalls keine Logs. Die Datei wird ja aber gestartet.

 

 

vor 45 Minuten schrieb Dukel:

Versuche mal:

 

powershell.exe -ExecutionPolicy Unrestricted -NoProfile -NonInteractive -file "C:\Program Files (x86)\APC\PowerChute Business Edition\agent\cmdfiles\test.ps1" 

Leider auch nicht. Genau das gleiche.

 

 

vor 43 Minuten schrieb testperson:

Wenn nirgendwo geloggt wird, musst du wohl was Logging einbauen

So habe ich herausgefunden, dass die CMD-Datei durchläuft. Zwar nicht mit PAUSE, sondern mit Message-Boxen. Einne in der ersten Zeile der CMD Datei, eine in der ps1-Datei und eine dritte in der letzten Zeile der CMD-Datei. Wenn ich die CMD Datei händisch starte, bekomme ich alle 3 Boxen angezeigt, wenn APC die startet nur die erste und die letzte.

 

 

vor 8 Minuten schrieb Squire:

hat die USV eine Managementkarte?

Leider nein, ist eine Smart 1000.

 

 

Grüße!

Link zu diesem Kommentar
vor 3 Minuten schrieb Dukel:

Wieso kauft man einen USV ohne Managementkarte?

Ich sag mal so: An dem Techniker (mir) hätts nicht gelegen.

 

Wobei ich auch ehrlich gesagt bei einem einzelnen angebundenen Gerät (hier, ein Server) keine netzbasierte USV bevorzuge, sondern eine mit einer direkten Verbindung. Eine Netzwerkinfrastruktur kann ausfallen, eine direkte USB Verbindung eher weniger.

Link zu diesem Kommentar
vor 1 Minute schrieb Dukel:

Was soll denn das Script machen

- Email schreiben

- einen Switch runterfahren (da haben wir uns vom Hersteller ein Script basteln lassen, dass das kann)

- zum Schluss den Server runterfahren (werde mit der APC-Eigenen Shutdown-Automatik nicht ganz warm)

 

vor 2 Minuten schrieb PowerShellAdmin:

Schau dir mal meinen Vorschlag an...  Das müsste eigentlich so noch laufen

Jup, da bin ich gerade dabei, mir so etwas zu basteln. Nur irgendwie scheinen die WWW-Lösungen nicht so richtig zu wollen. Kannst Du eine gute Anleitung, bzw einen "Vorlagen"-Code empfehlen, der das ordentlich kann?

 

 

Grüße!

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...