Problème avec l'outil Psshutdown - Réseaux - Systèmes & Réseaux Pro
Marsh Posté le 11-01-2008 à 19:54:11
il te faut complexifier un peu ton script en faisant des tests de ping et ensuite passer a la suite dans le cas unique ou le ping répond.
Exemple :
"for /F %%i IN (C:\Maintenance\test.txt) DO (
PING -n 2 -w 4 %%i | FIND "TTL=">NUL
IF NOT ERRORLEVEL 1 (psshutdown \\%%i -k -t 90 -c -n 5 -m "Redemarrage forcé blablabla""
) else (
echo machine %%i éteinte >> rapport.txt))
Marsh Posté le 10-01-2008 à 14:31:12
Bonjour,
je n'arrive pas à faire exécuter correctement un petit batch qui devrait me permettre de rebooter à distance un certain nombre de machines (350 au max).
voici la syntaxe:
psshutdown @"C:\Maintenance\test.txt" -k -t 90 -c -n 5 -m "Redemarrage forcé blablabla"
Sachant que le fichier test.txt contient donc les UNC des 350 machines (une par ligne) et que -n 5 est un timeout de 5 secondes après quoi on passe à la machine suivante (-k force l'extinction, -t 90 est le délai d'extinction, -c laisse la possibilité d'annuler au user et -m pour le message).
Cette syntaxe semble correcte puisque si je mets un seul UNC dans le .txt, cela fonctionne parfaitement. Cela se corse lorsque j'ajoute la liste complète des machines. Sur ces machines, certaines sont éteintes ou d'autres en veilles (veille totale), mais en principe, peu importe puisqu'il y a un timeout.
En fait, à partir du moment ou une machine ne répond pas pour x raisons, toutes les suivantes ne répondront pas, meme si elles sont allumées (je les ping pour verifier), et meme si j'arrive juste après à éteindre une de celles-ci avec un .txt contenant uniquement son unc.
Donc à partir du premier "timeout accessing PCx", toutes les autres commandes vont m'envoyer un timeout, meme si ces dernières sont pingables Et ce quelque soit la longueur du timeout
Une idée ?
merci