J'essaie d'ajouter /usr/local/texlive/2012/bin/x86_64-linux
à l'environnement PATH
pour mon utilisateur Apache (www-data
) après l'installation manuelle de TeX Live 2012.
J'ai édité mon /etc/environment
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/texlive/2012/bin/x86_64-linux"
d'inclure ce chemin dans ma variable d'environnement PATH
pour l'ensemble du système pour tous les utilisateurs.
Cependant, si j'exécute Sudo -u www-data printenv PATH
je ne reçois que:
# Sudo -u www-data printenv PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Je ne comprends pas la source de ce problème et je n’apprécie aucune aide.
J'ai eu un problème similaire: j'avais besoin d'une exportation spécifique pour www-data à utiliser lors de l'exécution de la commande PHP exec et j'ai réussi à bricoler cette solution:
Éditer /etc/Apache2/envvars
:
Sudo nano /etc/Apache2/envvars
Ajoutez votre exportation à la fin du fichier et enregistrez-le.
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/texlive/2012/bin/x86_64-linux"
Redémarrez Apache:
Sudo service Apache2 restart
Maintenant, si vous exécutez le code PHP suivant
<?php
$descriptorspec = array(
0 => array("pipe", "r"), // stdin
1 => array("pipe", "w"), // stdout
2 => array("pipe", "w"), // stderr
);
$process = proc_open('env', $descriptorspec, $pipes, dirname(__FILE__), null);
$stdout = stream_get_contents($pipes[1]);
fclose($pipes[1]);
var_dump($stdout);
?>
Vous devriez voir votre chemin environnemental tel que défini dans le fichier. Il semble qu'Apache crée des commandes sous www-data en utilisant uniquement le contenu de ce fichier de configuration, et non à partir des fichiers de type bash.bashrc, etc. Je ne peux pas dire avec certitude parce que je suis nouveau sur Linux.
Vous ne savez pas si c'est exactement ce que vous essayez d'atteindre, mais espérez que cela vous aidera.
Votre /etc/environment
n'a pas besoin de l'instruction export
devant les paires clé/valeur. Comme indiqué dans le wiki :
Ce n'est pas un fichier de script, mais plutôt une expression d'affectation, une par ligne.
Voir cette autre question sur le fonctionnement du format.
https://help.ubuntu.com/community/EnvironmentVariables sous "Variables d'environnement à l'échelle du système", la première note répondra à votre question.