A variável de ambiente $ HOME é sempre definida em um sistema Linux?

11

Supondo que a máquina esteja executando um kernel Linux, as sessões fazem uso do shell Bash e tudo está usando configurações padrão (nenhum usuário fez alterações nos arquivos de configuração), podemos assumir que a variável de ambiente $HOME está sempre definida ?

    
por yanhan 09.04.2014 / 08:14

1 resposta

15

Sim. A especificação POSIX exige que o sistema operacional defina um valor para $ HOME :

HOME
The system shall initialize this variable at the time of login to be a pathname of the user's home directory. See pwd.h.

E o usuário nobody ?

# su - nobody
No directory, logging in with HOME=/
$ echo $HOME
/

Mesmo que nobody não tenha uma verdadeira casa, HOME está definido para o diretório raiz.

    
por 09.04.2014 / 08:29