Descobri recentemente /etc/environment
, que parece uma maneira mais padrão de configurar variáveis de ambiente simples do que scripts, mas fiquei imaginando se havia uma maneira de fazer referência prévia de variáveis de ambiente no arquivo / etc / environment.
Ou seja, eu tenho o seguinte:
JAVA_HOME="/tools/java"
GRAILS_HOME="/tools/grails"
GROOVY_HOME="/tools/groovy"
GRADLE_HOME="/tools/gradle"
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
Se eu tentar adicionar $JAVA_HOME/bin
à definição PATH, no entanto, recebo $ JAVA_HOME / bin, e não a variável interpolada. Para remediar isso, estou criando o environment.sh no profile.d para adicionar as /bin
entradas ao caminho, mas isso parece desleixado e desorganizado.
Existe uma maneira de voltar a referenciar as variáveis de ambiente em / etc / environment?
fonte
/etc/environment
, recorri a/etc/profile
, obrigado por sua sugestão.A documentação do Ubuntu faz isso parecer impossível. MAS, há uma resposta.
RESPOSTA : Crie variáveis de ambiente persistentes em todo o sistema
/etc/.bashrc
Detalhes:
Aqui estão mais alguns detalhes da documentação de Variáveis de ambiente .
A recomendação oficial é usar
/etc/environment
, como você tentou. O problema é que esse arquivo não é um arquivo de script. Em outras palavras, você não pode usar variáveis em declarações de variáveis.A documentação continua com outros 2 arquivos "Não recomendados"
/etc/profile
e/etc/bash.bashrc
./etc/profile
"faz pouco mais do que invocar o arquivo /etc/bash.bashrc". Então escolha/etc/bash.bashrc
porque "O Ubuntu está configurado por padrão para executar este arquivo sempre que um usuário entra em um shell ou no ambiente de desktop".fonte