Risposte:
Il primo posto dove è impostato PATH è /etc/login.defs
. C'è un'impostazione per root e un'impostazione per tutti gli altri.
Un altro posto in cui è possibile definire le variabili di ambiente è /etc/environment
. Queste impostazioni si applicano a tutti (non è possibile scrivere codice shell arbitrario lì).
Un terzo posto in cui è possibile definire le variabili di ambiente è /etc/profile
. Lì puoi scrivere un codice shell arbitrario. Se si desidera un'impostazione specifica per l'utente, esiste il file per utente corrispondente ~www-data/.profile
. Ma questo si applica solo agli accessi interattivi alla console; in particolare non si applica ai lavori cron a meno che non vengano esplicitamente forniti /etc/profile
.
Se hai solo bisogno di PATH
quell'impostazione in un crontab utente, puoi scriverlo all'inizio del crontab. Si noti che è necessario l'elenco completo ( PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/zend/bin
), non è possibile utilizzare una sostituzione variabile ( PATH=$PATH:/usr/local/zend/bin
non funzionerà lì).
/etc/login.defs
sarebbe ignorata? Ho aggiornato ENV_PATH
e sto facendo eco $ PATH quando viene caricato .bashrc. Da qualche parte nel mezzo o viene modificato o non viene aggiornato poiché mostra il vecchio valore. Ho riavviato il computer, quindi non è quello.
PATH
in aggiunta o in sostituzione di altri modi.
Per impostare un percorso per tutti gli utenti tranne radice, modificare /etc/profile
o /etc/enviroment
. Per l'utente root o un singolo utente, modifica le loro .bashrc
o .bash_profile
nelle loro home directory, rispettivamente. Aggiungi il PATH=$PATH:/new/location/
.
Per impostare semplicemente var per tutti gli utenti senza gravare sul tuo profile
, puoi aggiungere il tuo piccolo script in una /etc/profile.d
directory del genere:
echo 'PATH="/usr/local/zend/bin:$PATH"' > /etc/profile.d/zend_path.sh
Quindi accedere nuovamente.
nano / etc / profile
Aggiungi queste righe alla fine del file:
export JAVA_HOME = / opt / jdk-12.0.1
export MAVEN_HOME = / opt / apache-maven-3.6.1
export M2_HOME = / opt / apache-maven-3.6.1
export M2 = / opt / apache-maven-3.6.1 / bin
export PATH = $ JAVA_HOME / bin: $ M2: $ PATH
Salva il file. Riavvia o utilizza il comando seguente:
fonte / etc / profilo
Metti alla prova le tue impostazioni:
echo $ JAVA_HOME
javac: versione