[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

syntaxe de sudoers



Bonjour,

Je cherche à lancer une commande avec sudo, en initialisant certaines variables d'environnement.

C'est pour un script d'init pour lancer tomcat sous son propre user.

J'y arrive sans pb avec su (mais c'est mal ;-) ) ou avec sudo qui appelle un script intermédiaire qui exporte mes variables d'environnement.

ça donne dans l'init
/usr/bin/sudo -u $TOMCAT_USER $TOMCAT_HOME/start_under_tomcat_user.sh

avec dans start_under_tomcat_user.sh
#!/bin/sh
JAVA_HOME=/opt/java
CATALINA_OPTS="-Dfile.encoding=iso8859-1"
export JAVA_HOME CATALINA_OPTS
/opt/tomcat5/bin/startup.sh

Ca marche correctement, mais j'aimerais me passer de ce script, en mettant les bons params dans /etc/sudoers (avoir ces 2 vars et virer tout le reste), mais je n'y arrive pas.

J'ai lu (entre autres) http://aplawrence.com/Basics/sudo.html et
http://www.courtesan.com/sudo/man/sudoers.html mais j'ai pas réussi à mettre les bons params dans /etc/sudoers pour pouvoir appeler /opt/tomcat5/bin/startup.sh directement dans l'init.

Si qqun a ça sous la main... ou bien pourrait donner des tuyaux sur la syntaxe à utiliser... merci

Daniel

PS: j'ai testé avec

cat myenv.sh
#!/bin/sh
echo "L'environnement complet"
printenv

et dans /etc/sudoers
Defaults:tomcat5 env_delete+="JAVA_HOME"

mais un
export JAVA_HOME=/opt/java && sudo -u tomcat5 myenv.sh
ne fait pas apparaitre ce JAVA_HOME...




Reply to: