[Shell] commande via ssh

commande via ssh [Shell] - Shell/Batch - Programmation

Marsh Posté le 10-03-2012 à 17:25:07    

Bonjour,
j'ai un souci pour exécuter une commande sur une machine distante (mon NAS Synology) via ssh:
j'ai un certain nombre de packages installés sur mon NAS
quand je suis loggé dessus en ssh, si je lance une commande d'un de ces paquets, par exemple:

Code :
  1. mkvmerge


il se passe bien ce qui doit se passer
 
par contre, si je fais sur ma machine locale:

Code :
  1. ssh root@192.168.0.100 "mkvmerge"


il me dit

Code :
  1. ash: mkvmerge: not found


je m'en suis rendu compte en lançant un script via ssh qui fait appel notamment à mkvmerge, qui marche très bien en me connectant via ssh puis en le lançant, mais si j'essaie de faire tout en un, ça marche pô  :(

Reply

Marsh Posté le 10-03-2012 à 17:25:07   

Reply

Marsh Posté le 10-03-2012 à 22:32:30    

Fais une recherche google les mots : ssh expect

Reply

Marsh Posté le 10-03-2012 à 22:51:56    

euh, je viens de regarder, et si je comprends bien, ça sert notamment pour gérer les interactions non? du coup je comprends pas comment ça peut résoudre mon problème?  :??:  
ça pourrait servir pour gérer le mot de passe à la connexion ssh, mais j'ai échangé les clés, du coup plus besoin de rentrer le mdp à la connexion...
j'ai loupé un truc?

Reply

Marsh Posté le 11-03-2012 à 00:31:11    

ça y est j'ai trouvé!!
en fait, j'ai découvert que en lançant ssh user@hote "commande"
l'environnement chargé par ssh n'est pas l'environnement normal de l'hôte...

 

il faut donc faire ssh user@hote "source ~/.profile;commande"
et là ça marche nickel...


Message édité par ganfoud le 11-03-2012 à 00:31:26
Reply

Sujets relatifs:

Leave a Replay

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