[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: profile



On 3/4/06, Marcos Vinicius Lazarini wrote:
> Até hoje, nao entendi (nem me conformo) pq tem que colocar nos dois
> lugares....... isso vale tanto pros arquivos globais como os do usuário.
>
> No ~/.bash_profile já tem o alias que adiciona o ~/bin no PATH, foi só
> descomentar e no ctrl+alt+fx funcionou perfeito. PORÉM, qdo abro um console
> no X, ele não roda o ~/.bash_profile e sim ~/.bashrc - que não a modificação
> do PATH comentada. Meu, que raiva! Toda vez que eu ia no console e digitava
> algo do meu bin que ele nao achava, eu ficava doido.
> Ontem, num acesso de nervosismo, fiz umas gambis nos dois arquivos pra um
> chamar o outro SEMPRE.
>
> Se alguém soubesse me dar um motivo médio (não precisa ser muito convincente
> :-) ) para explicar por que o bash funciona assim ficaria muito grato...

Já que não precisa ser muito convincente, eu respondo. :-)

Como dito no manual do bash, ele faz distinção entre terminal de login
e outros terminais. Os terminais de programas gráficos tipo xterm,
konsole, gnome-terminal, etc. NÃO são terminais de login -- você fez
login antes deles serem executados. Os terminais dos getty (aqueles do
ctrl+alt+fx) são terminais de login -- você abre eles ao fazer login.

O bash chama arquivos de iniciliazação diferentes em função ser
chamado no login ou não.

Agora, provavelmente você quer mesmo é saber porque ele faz isso.
Acredito que o motivo é permitir o máximo de personalização, o que
permite minimizar os recursos usados. Geralmente você precisa de mais
coisa sendo executada no login.

Para "piorar" ainda mais, o bash também faz distinção entre ser
interativo ou não. Acredito que pelas mesas razões, afinal toda hora
tem um bash sendo iniciado e outro sendo terminado por motivos
diversos. Quanto mais leve puder ser a inicialização de cada instância
do bash, melhor.

--
Bruno de Oliveira Schneider
http://www.dcc.ufla.br/~bruno/



Reply to: