On 7/27/06, Tiago Saboga wrote:
1) Quando entro como root no terminal (alt-f1, ou konsole->novo rootshell) os diretórios sbin não estão no meu path. Quando entro como usuário comum e passo para root como su ou sux, ao contrário, os diretórios estão no lugar certo. Imagino que seja então algo relativo a login/non-login shell, mas não consegui entender direito na página de manual do bash quando um shell é login e quando não é. Além disso olhei no /etc/bash.bashrc e no /etc/profile e não há nada em nenhum dos dois, pelo que entendo, que modifique a variável PATH. Aonde então isso é feito, já que funciona pelo su?
Alguns fatos que devem ajudar (estou supondo que você usa bash): 1) O manual do bash nem tenta explicar as situações em que ele é um "login shell" porque isso depende de quem chama o bash. 2) O su (suponho que o sux também) alteram o PATH por conta própria, por isso funcionou com eles. 3) É natural que os arquivos de inicialização no /etc não coloquem os diretórios sbin no PATH, já que eles deveriam ser exclusivos do root. 4) O "login" deveria chamar um "login shell", então quando você loga como root no console (aquele do ctrl-alt-fx), deveria abrir um "login shell". O konsole, na configuração padrão, não abre um login shell. 5) Costuma-se definir o PATH nos "profile" da vida. Se os seus não tem nada, sugiro colocar. No meu /etc/profile tem: PATH="/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" e no meu /root/.profile tem: PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11 Esse último vai garantir que os sbin estejam no PATH quando você logar no console. Já para o konsole ou "novo rootshell", eu não sei. Não uso KDE. -- Bruno de Oliveira Schneider http://www.dcc.ufla.br/~bruno/

