Bonjour à tous,

Tout d'abord, désolé si ce topic n'est pas au bon endroit !

Voici mon problème :
J'exécute un programme sur un serveur qui va connecter à un ou plusieurs autres serveurs. Le programme va exécuter X commandes systèmes et X commandes SQL sur les différents "autres serveurs". Jusque là tout va bien, les connexions fonctionnent, les commandes comme pwd, ls & co passent.

Cependant, lorsqu'un utilisateur veut passer une commande qui nécessite l'utilisation d'une variable d'environnement ça coince !

J'ai poussé un fichier sur chaque "autre serveur" un wrapper.sh qui me permet de sourcer le .profile. Il contient :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
#!/bin/sh
 
source ~/.profile
Voici ma connexion en SSH :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
sub connexionSSH {
  ($host) = @_;
  $ssh = Net::OpenSSH->new($host, user => $user, password => $password, master_stderr_discard => 1);
  $ssh->error and die "unable to connect to remote host  : ".$ssh->error;
}
Ca fonctionne pas mal cependant ça ne marche pas pour les variables d'environnement. Avez-vous une idée de comment faire ?

Merci d'avance !