Soluzione 1:
Il primo posto in cui è impostato PATH è /etc/login.defs
. C'è un'impostazione per root e un'impostazione per tutti gli altri.
Un altro posto dove puoi definire le variabili d'ambiente è /etc/environment
. Queste impostazioni si applicheranno a tutti (non puoi scrivere codice shell arbitrario lì).
Un terzo posto dove puoi definire le variabili d'ambiente è /etc/profile
. Lì puoi scrivere codice shell arbitrario. Se desideri un'impostazione specifica per l'utente, esiste il corrispondente file per utente ~www-data/.profile
. Ma questo si applicherà solo agli accessi interattivi della console; in particolare non si applicherà ai cron job a meno che non forniscano esplicitamente /etc/profile
.
Se ti serve solo quel PATH
impostazione in un crontab utente, puoi scriverlo all'inizio del crontab. Nota che hai bisogno dell'elenco completo (PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/zend/bin
), non puoi utilizzare una sostituzione di variabile (PATH=$PATH:/usr/local/zend/bin
non funzionerà lì).
Soluzione 2:
Per impostare un percorso per tutti gli utenti tranne root, modifica /etc/profile
o /etc/enviroment
. Per root o un singolo utente modifica il proprio .bashrc
o .bash_profile
nelle loro home directory, rispettivamente. Aggiungi PATH=$PATH:/new/location/
.