~/.pam_environment
(e /etc/environment
) é analisado quando você efetua login (inclusive quando você faz login graficamente). Depois disso, todos os processos executados a partir de uma sessão conectada herdarão as variáveis de ambiente definidas nesses dois arquivos.
Note, porém, que ~/.pam_enviornment
não é um script de shell. Aceita apenas KEY=VALUE
pares; ele não expandirá ~
ou $VAR
ou qualquer outra sintaxe do shell, portanto, não é utilizável em todos os casos. Se você quiser prefixar / acrescentar ~/bin
a PATH
, por exemplo, terá que fazer isso em ~/.profile
. Porque PATH=~/bin:$PATH
não será interpretado corretamente por pam_env.
~/.profile
também é lido quando você faz login graficamente.