VIVEZ LE
FOOTBALL !

Posez votre question Signaler

Exécuter script shell avec autre utilisateur [Résolu]

sam - Dernière réponse le 2 mars 2009 à 20:18
Bonjour,
Mon problème est comme suit :
à partir du shell d'un utilisateur Y autre que le root, je voudrai lancer un script shell avec un autre utilisateur Y sans demander de mot de passe.
Merci d'avance.
Lire la suite 

Exécuter script shell avec autre utilisateur »

7 réponses
Réponse
+2
moins plus
c'est un script qui s'execute en arrière plan ;)
le ssh est mieux placé pour cela.
Merci pour ta réponse tout de même :)
Ajouter un commentaire
Réponse
+0
moins plus
C'est possible de lancer un script distant avec un autre login et éventuellement sur une autre machine via ssh
ssh login@machine /le/chemin/vers/le/script.sh

Dans ce cas, "machine" doit avoir lancé un serveur ssh.

Pour éviter de taper le mot de passe, il suffit de configurer une clé ssh :
http://prendreuncafe.com/...

Si c'est là même machine, tu peux remplacer "machine" par "localhost" ou 127.0.0.1. Mais dans ce cas, tu n'as même pas besoin de passer par ssh, su doit suffire avec l'option --command :
http://www.linux-france.org/article/man-fr/man1/su-1.html

Bonne chance
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,
Merci pour ta réponse. Mais mon problème c'est pas le ssh, ça je sais faire et c'est ce que je fais d'ailleurs.
Quand je lance un ssh user2@machine script il s'execute au niveau de la machine distante avec l'utilisateur de cnx shell.
Exemple:
1.Se connecter avec user1
2.lancer le script via ssh "ssh user2@machine script"

Au niveau de la machine distante c'est le user1 qui est pris par défaut :(
Ajouter un commentaire
Réponse
+0
moins plus
ta essaye tout simplement:

su user2 command=script

a la place de ton script?

par contre, "su user2" te demandera le password de user2, mais c'est normal

voila si ca peux t'aider...
Ajouter un commentaire
Réponse
+0
moins plus
tu peux regarder du coté de sudo, cela te permet de configurer l'exécution de ton shell avec un autre user et sans avoir a entrez de mdp.

bon courage.
Ajouter un commentaire
Réponse
+0
moins plus
un petit oublie sur la même machine tu peut faire aussi un su toto - c "script.ksh" quelque chose du genre...

a+
Ajouter un commentaire
Réponse
+0
moins plus
Tout d'abord avec un su ce serait plutôt --command :
(mando@aldur) (~) $ su - root --command="whoami"
root

Au niveau de ssh je pense que tu te trompes, c'est bien le profil via lequel tu te connectes en ssh qui est uitlisé :
(mando@aldur) (~) $ ssh root@localhost whoami
root@localhost's password:
root

Bonne chance
Ajouter un commentaire
Ce document intitulé « Exécuter script shell avec autre utilisateur » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?