Solution 1 :
Le premier endroit où PATH est défini est /etc/login.defs
. Il y a un paramètre pour root et un paramètre pour tous les autres.
Un autre endroit où vous pouvez définir des variables d'environnement est /etc/environment
. Ces paramètres s'appliqueront à tout le monde (vous ne pouvez pas y écrire de code shell arbitraire).
Un troisième endroit où vous pouvez définir des variables d'environnement est /etc/profile
. Là, vous pouvez écrire du code shell arbitraire. Si vous souhaitez un paramètre spécifique à l'utilisateur, il existe le fichier par utilisateur correspondant ~www-data/.profile
. Mais cela ne s'appliquera qu'aux connexions interactives à la console ; en particulier, cela ne s'appliquera pas aux tâches cron à moins qu'elles ne sourcent explicitement /etc/profile
.
Si vous n'avez besoin que de ce PATH
paramètre dans une crontab utilisateur, vous pouvez l'écrire au début de la crontab. Notez que vous avez besoin de la liste complète (PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/zend/bin
), vous ne pouvez pas utiliser une substitution de variable (PATH=$PATH:/usr/local/zend/bin
ne fonctionnera pas là-bas).
Solution 2 :
Pour définir un chemin pour tous les utilisateurs sauf root, modifiez /etc/profile
ou /etc/enviroment
. Pour root ou un utilisateur individuel, modifiez leur .bashrc
ou .bash_profile
dans leurs répertoires personnels, respectivement. Ajoutez le PATH=$PATH:/new/location/
.