Variabili d'ambiente: dove sono archiviate da Linux, come posso cambiarle ed è sicuro farlo?


13

Sto cercando di configurare una build dal sorgente una vecchia versione di gcc sulla mia macchina di sviluppo. La documentazione evidenzia diverse variabili d'ambiente che devono essere modificate per fare ciò. Mi chiedevo come fare questo e anche dove li memorizza Linux e se è necessario un riavvio del sistema per registrare eventuali modifiche ??


Puoi elencare le variabili di ambiente che devono essere modificate?
Hashken,

Risposte:


14

Le variabili di ambiente globali del sistema sono archiviate /etc/environment.
Qualsiasi modifica qui verrà riflessa in tutto il sistema e interesserà tutti gli utenti del sistema. Inoltre, è necessario un riavvio per rendere effettive le modifiche apportate qui.

Livello utente Le variabili di ambiente sono principalmente archiviate .bashrce .profilefile nella cartella Home. Le modifiche qui riguardano solo quel particolare utente. Basta chiudere e aprire il terminale affinché avvengano le modifiche alla configurazione.

Modifica : se non si desidera riavviare o riavviare il terminale, è possibile utilizzare il comando source.
Per esempio. source /etc/environmentosource .bashrc


4
Non è necessario un riavvio. È possibile utilizzare il comando source per caricare le variabili dopo una modifica. es: source / etc / environment o source .bashrc
Manula Waidyanatha,

Per quello che stai cercando di fare cambiando .profilenon è la cosa giusta da fare. .bashrcnon dovrebbe essere usato in quanto in alcune situazioni può causare problemi. Ed /etc/environmentè una via d'uscita (non cambiare il sistema per fare un lavoro).
ctrl-alt-delor,

2

Ciò di cui hai bisogno sono i cambiamenti temporali locali. Non avrai bisogno di loro domani, quando stai facendo qualcos'altro, potrebbe spezzare la cosa che fai domani. Tuttavia potresti salvarlo come build-script / makefile per usarlo domani.

export VARIABLE=value
export VARIABLE2=another_value
gcc …

o

VARIABLE=value VARIABLE2=another_value gcc …

nota: se si utilizza make, il primo esempio non funzionerà. Make avvia una nuova shell (sh) per ogni riga.


1

È necessario posizionare le variabili di ambiente in base all'utente per ~ / .pam_environment

Crea il file se non esiste. Vedi qui

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.