su dans un script bash

Clément Février clement at forumanalogue.fr
Ven 30 Sep 09:08:59 UTC 2011


Bonjour,

Je cherche à utiliser su dans un script bash pour exécuter une commande.
Le mot de passe de l'utilisateur ne sera pas saisi durant l'exécution du
script. J'ai donc mis cette ligne dans mon script :

echo -e "${mdp}" | su $pseudo -c "echo plop"

Mais cette commande me retourne :

su : doit être lancé à partir d'un terminal

Puis, le script continue sa vie sans exécuter la commande.

Je peux éventuellement ajouter /bin/su à /etc/sudoers puis lancer :
sudo su
su $pseudo -c "echo plop"
exit

Est-ce possible d'éviter cette étape et de passer directement le mot de
passe en argument à su ?

Clément




Plus d'informations sur la liste de diffusion ubuntu-fr