|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |||
|
Invité de passage
![]() Inscription : juillet 2008 Messages : 1 ![]() |
sur linux redhat je voudrai lancer un script sur deux machines distantes (redhat aussi) avec ssh comme suit :
Code :
j'ai lancé aussi ce bout de code avec activation du mode debug de la commande ssh le résultat est : Citation:
l'exécussion reste bloquer à ce niveau sans passer à l'itéraion 2 pour exécuter le script load.sh sur inj8 la dérnière ligne du script load.sh est exit 0 quelqu'u pourra m'expliquer ce qu'il passe ?? et comment puis je résoudre ce problème ?? merci |
|||
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() ![]() Inscription : mai 2002 Messages : 504 ![]() |
As-tu le meme probleme en interactif (i.e. tu te logue en ssh sur la machine et lance le script puis CTL-D pour quitter) ?
Si oui c'est surement que tu lance d'autre process qui utilise un des descripteurs (stdin, stdout et stderr) ouvert par ssh (sur ta machine hote) et donc ssh ne ferme pas la connection. Tu peux: - soit utiliser ssh -f <...> load.sh pour lancer le process load.sh en background - soit veiller a ce que les descripteurs ne soient pas utilisés par les process lancés (regarde dans les /proc/<pid des process>/fd/ s'ils pointent sur les /dev/sttyX (lors de ta connection interactive tu devrais voir lequel est utilise avec le pid du shell qui est lancé)
__________________
1)Avant de poster, merci de lire les règles. 2)Utiliser [code] [/code] pour quoter le code ! 3)Conseils pour le forum C [a lire en entier!] |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com