A diferença entre su e bash

2

Quando eu acesso o servidor de rede, eu uso o comando sudo su para obter privilégios de administrador. Recentemente, descobri que sudo bash é o comando correto e me permitirá privilégios em su .

Qual é a diferença entre sudo su e sudo bash ? Eu pensei que ambos eram equivalentes.

    
por shantanuo 17.02.2011 / 06:40

2 respostas

3

Quando você executa sudo su , inicia o shell padrão do usuário root, que provavelmente é o shell Bourne (sh). Você pode fazer sudo -s para obter o shell padrão do usuário atual.

    
por 17.02.2011 / 06:44
1

Quais privilégios você sente falta depois

sudo su

Pode ser que você simplesmente não tenha o ambiente da raiz configurado após esse comando. Se você fizer

sudo su -

(observe o "-"), então o perfil do usuário root será lido e o ambiente (entre outras coisas, variável PATH) será definido como se você tivesse efetuado login como root. Se você correr sudo su , você mantém seu ambiente e obtém o uid eficaz de 0, o que significa que você tem os privilégios do usuário root sem configurar o ambiente raiz. sudo su - altera seu diretório atual para o diretório inicial da raiz, então eu uso sudo su se eu quiser executar alguns comandos no diretório atual (por exemplo, alterar proprietário de um arquivo) sem ter que digitar em caminhos longos.

    
por 17.02.2011 / 09:29

Tags