Lancer un script sur toutes les stations d'une réseau depuis 1 pc

Lancer un script sur toutes les stations d'une réseau depuis 1 pc - Windows & Software

Marsh Posté le 24-01-2004 à 08:51:52    

Salut,
 
 
Je souhaiterai pouvoir lancer l'execution d'unn script sur toutes les machines d'un réseau.
 
Mon but est de lancer ce script depuis une des machines du réseau.
 
Ext-ce possible ? Théoriqueemnt oui (diffusion multicast ou broadcast), certaines applis le font (distribution de "post-it"...) Mais dans mon cas, je souhaite juste lancer un script type "batch".
 
Comment faire ?
 
Peut-être existe-t-il des appli qui permettent de réaliser ce que je veux ? (il existe bien des applis qui comande l'aret de toutes les station !)
 
Merci par avance

Reply

Marsh Posté le 24-01-2004 à 08:51:52   

Reply

Marsh Posté le 24-01-2004 à 09:18:53    

Tu décris ni l'OS utilisé, ni la topologie exacte du réseau, ni la configuration des machines...
 
Pour les applis qui arretent une machines elles se basent sur l'exécution d'un service qui est déjà installé sur les machines et pret à recevoir les données.
 

Reply

Marsh Posté le 24-01-2004 à 09:50:04    

Je parle de station Win98 en poste à poste

Reply

Marsh Posté le 24-01-2004 à 13:19:56    

Sous 98 ... bofff tu n'as pas grand chose et faudra passer sur chaque machine.
 
Voici une magouille :
1) Tu créer un partage ("script" par exemple) sur ton serveur (ou le PC qui tient ce role)
2) Sur chaque machine 98 tu place un fichier batch (script.bat) avec juste un simple un appel à "CALL \\monserveur\script\srvscript.bat"
3) Toujours sous 98 ; tu créé un raccourci soit dans le menu démarrage (chaque ouverture de l'ordinateur), soit une tache planifiée (choix de l'heure) vers le fichier script.bat si dessus
4) Sur ton serveur il suffit d'écrire les commandes souhaitées dans le fichier "srvscript.bat"
 
Voila 98 n'est pas vraiment la plateforme de choix en réseau...


Message édité par Requin le 24-01-2004 à 13:20:38
Reply

Marsh Posté le 24-01-2004 à 13:33:38    

Ce n'est pas un script de log ou qq chose dans le même genre que je cherche à faire. Je souhaite lancer l'execution d'un script depuis un poste sur tous les autres (le script pouvant être stocké) localement sur chaque machine.
 
C'est moi qui doit pouvor le lancer, ce n'est pas qq chose que je soujaite progrmmer!
 
Des idées ?
 
ps : 98 n'est pas une plateforme de choix en réseau, mais avant l'arrivée d'xp, la plupart des station des réseaux dépourvu d'os server nt étaient en 98...

Reply

Marsh Posté le 24-01-2004 à 17:46:28    

Tu ne pourras pas le faire... 98 ne possède, à ma connaissance, pas de mécanisme pour ce genre de choses.
 
Par ailleurs si tu ne souhaite rien programmer passe ton chemin, car à la limite tu pourrais créer un programme résidant "serveur" qui se chargerait de recevoir sur un port défini les scripts et ensuite les exécuterait sur la machine locale et le "client" pour commander l'exécution de scripts (un tel produit fiable et sécurisé existe peut-être, bien que j'en doute, il faudrait prospecter)
 
P.S. NT4 workstation, windows 2000 pro... du moins pour les réseaux sérieux sous Win32.

Reply

Marsh Posté le 25-01-2004 à 17:37:42    


Quand je dis programmer, je parlais des tâches (planifiées).
 
Je suis prêt à taper du code s'il le faut, mais pour l'instant je ne vois pas comment faire! alors si un petit utilitaire existe...

Reply

Marsh Posté le 25-01-2004 à 17:50:23    

Je vais te donner quelques lignes directrices (tu peux le faire en Visual Basic assez simplement).
 
Côté serveur :
1) place une form dont la valeur visible sera sur faux
2) ajoute un composant socks (pour écouter sur un port TCP prédéfini)
3) défini un langage de commandes (transfert d'un script, exécution, ...)
4) Ecrit le script reçu via le réseau sur le disque (exécution)
5) Appele le script à l'aide de la commande shell
 
Côté client :
1) Créé un form
2) Place un controle socks qui se comportera en client
3) Ajoute un champ pour l'IP de la machine que tu souhaite connecter (dans une version améliorée tu pourras créer une liste de machines, des groupes, etc), éventuellement un autre pour le port
4) Ajoute une liste pour tes scripts disponibles
5) Ajoute un bouton exécuter
 
Voila au moment ou tu clique le bouton exécuter, le controle socks tente d'établir la connexion TCP à l'IP / port indiqués, puis transmet le script (fichier lu sur ta machine) à la machine distante, qui l'écrit sur son disque et l'appel.
 
C'est pas spécialement compliqué à faire... sur les machines clients il faudra que ton programme "serveur" soit installé et éxécuté au démarrage (clé "run" de la registry)
 
En VB.Net ce serait un peu différent, le framework possède tout ce qu'il faut pour établir des connexions et donc il a priori inutile d'utiliser le controle socks.

Reply

Marsh Posté le 26-01-2004 à 10:19:07    

Merci pour ces explications complètes.
 
Malheiureusement tout ça n'est pas à ma portée !!!
 
Si j'installait un serveur vnc sur chaque machine, je pourrais en prendre leur contrôle ?
 
Dans ce cas est-ce possible de contrôler plusieurs machine en même temps ? (diffusion multicast ou broadcast)


Message édité par MLG le 26-01-2004 à 10:19:12
Reply

Marsh Posté le 27-01-2004 à 00:32:43    

Non tu ne pourrais pas controler plusieures machines simultanément de cette façon... VNC établit une connexion TCP unicast (en principe sur le port 5900), donc au mieux tu pourrais controler les machines une à une.
 
Pour la "portée" j'ignore si il te manque les outils ou les connaissances, mais sache que le framework avec les compilateurs .Net, C# et C++, ainsi que la documentation est disponible gratuitement en téléchargement (.NET framework SDK sur le site de Microsoft), si tu as quelques notions de programmation en langage objet tu devrais t'en sortir... évisement ce sera plus rapide à développer avec un IDE style Visual Studio.

Reply

Marsh Posté le 27-01-2004 à 00:32:43   

Reply

Marsh Posté le 27-01-2004 à 00:47:01    

Je vais testé le freeware specrem... on verra ce que ça donne  
 
merci pour ton aide...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed