Shell e comando su

3

Alguém por favor pode explicar porque quando eu emito:

su
echo $0

diz:

bash

quando

su -
echo $0

diz:

-su

Estou certo de que no caso 1 (apenas su ) shell atual gera um novo shell não interativo, enquanto no segundo caso ( su - ) apenas fica com o shell atual?

    
por Mulligan 16.01.2017 / 11:34

2 respostas

2

Quando você usa apenas su , você herda o ambiente do usuário que está executando su . Por outro lado, quando você usa su - (é atalho para a opção -login de su ), você muda "completamente" para a conta root e configura o ambiente da mesma forma como se acontecesse se você logar diretamente na raiz

    
por 16.01.2017 / 11:54
1

A resposta de Alex está correta, mas ele não explicou realmente o que você está vendo. Quando você executa su - , está importando o ambiente do usuário para o qual você está alternando (root, neste caso). O último comando que você executou como root deve ter sido su .

    
por 16.01.2017 / 11:56

Tags