Comment déclencher un script PowerShell à l'aide de PowerChute Network Shutdown ?
Produit :
PowerChute Network Shutdown
Environnement :
Tous les OS Windows pris en charge exécutant PowerChute Network Shutdown version 4.4.x et supérieure.
Solution :
Pour exécuter un script PowerShell à partir de PowerChute, vous devez créer deux scripts : un fichier .bat ou .cmd et un script PowerShell .ps1.
Pour exécuter un script Windows PowerShell à partir de PowerChute, vous devez créer deux scripts : un fichier .bat ou .cmd et un script PowerShell .ps1. Nous recommandons d'utiliser Notepad++ pour éviter d'enregistrer les fichiers en tant que .txt dans Notepad ou WordPad.
PowerChute exécutera un .bat, nous avons donc créé Trigger.bat. Ce fichier se compose de
"%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe" ; -ExecutionPolicy Unrestricted -NoProfile -NonInteractive C:'\Temp\MyPowerShellScript.ps1'
Il est nécessaire de créer un fichier .bat.
C:\N- C:\NProgrammation de l'arrêt du réseau
C:\NProgram Files\NAPC\NPowerChute\Nfichiers_utilisateur pour les systèmes Windows
/opt/APC/PowerChute/user_files/ pour les systèmes Linux
Le deuxième fichier est le fichier de configuration.
La deuxième partie du fichier est le fichier .ps1.
Démarrer le processus "C:\NProgram Files\my.exe"
Il est nécessaire de créer un fichier .ps1 dans le fichier .ps1 pour que PowerShell puisse déclencher my.exe.
Vous devrez vérifier ou modifier le chemin d'accès au fichier .exe
Le fichier de commande s'exécute à l'aide du compte système local. Il se peut que vous deviez modifier les paramètres du compte pour permettre au script de s'exécuter. Pour modifier le compte, accédez à Panneau de configuration-Outils d'administration-Services. Dans l'exemple ci-dessous, l'utilisateur a été remplacé par wkadmin.
NOTE : PowerChute ne peut pas exécuter de programmes qui nécessitent une interaction avec le bureau ; seuls les programmes compatibles avec la ligne de commande sont pris en charge. Par exemple, si vous essayez de lancer le Bloc-notes, l'opération échouera. Dans les versions antérieures de Windows, tous les services s'exécutaient dans la session 0 en même temps que les applications. Cette situation présentait un risque pour la sécurité. Dans Windows Vista et les versions ultérieures de Windows, le système d'exploitation isole les services dans la session 0 et exécute les applications dans d'autres sessions. PowerChute est exécuté dans la session 0. Par conséquent, si un fichier de commande lance un .exe, ce .exe sera lancé dans la session 0 et ne sera pas visible pour les utilisateurs connectés. Pour vérifier que le fichier .exe a bien été lancé, ouvrez le Gestionnaire des tâches et consultez la liste des processus en cours d'exécution. Vous trouverez de plus amples informations sur la session Windows à l'adresse suivante : http://blogs.technet.com/b/askperf/archive/2007/04/27/application-compatibility-session-0-isolation.aspx