Forum Programmation.perl script perl avec plink (ssh)

Posté par  .
Étiquettes : aucune
0
11
mar.
2009
bonjour a tous,

Est-ce vraiment possible de faire cela ?
je dois réaliser un script perl sous windows (si si, obligé) pour lancer des commandes sous des linux. Jusque la, pas de probleme, avec un peu de gestion processus (IPC::open2) je peux lancer des commandes et accepter automatiquement le/les nouveau serveurs.

Mais ma grande question est la :
je dois lancer certaines commandes en root, et dans mon cas précis, pas d'autres choix que de faire des sudo alors.
Je n'arrive pas apres connexions au serveur SSH a lui faire executer des commandes, notament :
sudo cmd
"password"
exit

Y a -til une solution ??

un grand merci d'avance.
  • # Commentaire supprimé

    Posté par  . Évalué à 2.

    Ce commentaire a été supprimé par l’équipe de modération.

    • [^] # Re: Module expect

      Posté par  . Évalué à 1.

      en fait, quand je lance plink, j'envoie un "y\n" pour accepter la connexion, arrive un shell(j'ai donc bien un tty); mais ensuite pas moyen que ce que j'envoie soit pris en tant que commande pour le shell :(
      meme un simple "ls" ne passe pas, je n'arrive pas a interagir avec le shell distant précisement.

      ca sent le mur, mais je ne desespere pas !

      merci.
      • [^] # Re: Module expect

        Posté par  . Évalué à 1.

        je plussoie, utilise expect en module ou même en dehors de perl, c'est son métier de piloter des programmes shell ...
        • [^] # Re: Module expect

          Posté par  . Évalué à 1.

          J'ai un active perl
          de ce que j'ai vu , il n'y a pas de module expect

          Mais aussi, si je n'arrive pas a evoie des commandes a plink, je ne pense pas que expect pourra y faire grand chose , non ?
  • # Commentaire supprimé

    Posté par  . Évalué à 2.

    Ce commentaire a été supprimé par l’équipe de modération.

    • [^] # Re: Pas d'autres de choix ?

      Posté par  . Évalué à 1.

      pas le droit de toucher aux serveurs (plein...)
      Je me connecte, c'est tout , pas le droit a plus
  • # sudo sans passwd

    Posté par  . Évalué à 1.

    visudo
    puis
    tonuser ALL=(ALL) NOPASSWD:liste des commandes

    et ton utilisateur n'auras pas besoin de rentrer le mot de passe lors de
    sudo cmd
    • [^] # Re: sudo sans passwd

      Posté par  . Évalué à 1.

      je n'ai pas le droit de toucher au serveurs .
      la conf est figé en gros, sinon ca aurait été simple, mais la non
  • # que dit le man ?

    Posté par  . Évalué à 1.

    Bonjour,
    man sudo
    [...]
    -S  The -S (stdin) option causes sudo to read the password from the standard input instead of the terminal device.
    
    Bref:
    $ echo "monmotdepasse"| sudo -S id 
    ou encore  
    $ sudo -S id < fichier_contenant_monmotdepasse
    [sudo] password for user01: 
    uid=0(root) gid=0(root) groups=0(root),10(uucp),20(dialout),1000(vmc)
    
  • # Et avec une VM ?

    Posté par  . Évalué à 1.

    Tu ne peux pas installer une virtual machine sur ton windows ?
    tu pourrais faire tourner un linux comme ca, et donc avoir les sudo et faire ton dev sans problème.
    (avec virtualbox par exemple)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.