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: