Por que meu usuário recém-criado não está herdando a variável $ PATH

1

Eu adicionei um novo usuário dev na minha imagem baseada no Alpine. Depois de mudar para o novo usuário, vejo variáveis env diferentes no caso de root e dev user. Especialmente $PATH variable é diferente. Mas acho que não deve ser diferente, pois é exportado globalmente em /etc/profile .

$ cat /etc/profile

export CHARSET=UTF-8
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
export PAGER=less
export PS1='\h:\w\$ '
umask 022

for script in /etc/profile.d/*.sh ; do
        if [ -r $script ] ; then
                . $script
        fi
done
composer(){ su-exec deploy composer.phar "$@"; }

$PATH variable no caso do usuário root

# env | grep $PATH
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

$PATH variable no caso de dev

# adduser -D -u 2500 -s /bin/sh dev
# su dev
$ env | grep $PATH
PATH=/bin:/usr/bin

Eu sei que posso adicionar .sh dentro de profile.d dir e exportar novamente a variável $PATH , mas por que não é herdada por isso question ( Se os processos herdam o ambiente dos pais, por que precisamos exportar? )? Existe alguma outra maneira que eu possa herdar as variáveis env, exceto a criação de um novo perfil para dev user? Onde essas variáveis env foram definidas para dev user?

    
por SkyRar 05.11.2018 / 14:03

0 respostas