1
resposta

[Dúvida]Diferenças sutis entre sudo -i & sudo -su

Em um ambiente Linux, os comandos sudo -i e sudo -su são usados para ganhar privilégios de superusuário (ou de outro usuário), mas têm diferenças sutis mas importantes no comportamento, especialmente no que diz respeito ao ambiente de shell.

sudo -i

Significa: "login shell do root"
Comportamento:

  • Simula um login completo como o usuário root.
  • Carrega os arquivos de configuração de ambiente do root, como:
    • /root/.profile
    • /root/.bashrc
    • /root/.bash_profile
  • Muda o diretório atual para o home do root (/root).
    É equivalente a fazer su - (com o traço), que também inicia um shell de login.
    Uso típico:
sudo -i

Quando usar:
Quando você quer operar como root com o ambiente completo de root, como se tivesse feito login como root.
sudo -su
Significa: "start a shell como o usuário especificado"
Comportamento:

  • Abre um novo shell com os privilégios do usuário especificado, por padrão o root.
  • Não carrega o ambiente de login completo do usuário.
  • Mantém o diretório atual.
  • Usa o ambiente do usuário atual, a menos que você o sobrescreva.
    Uso tipico:
sudo -su 

Quando usar:
Quando você só precisa executar comandos como root, mas quer manter o ambiente atual.
Comente ai se já conhecia estas diferenças.
Bons estudos.

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oi, Ronaldo! Como vai?

Achei ótima a forma como você explicou as diferenças entre sudo -i e sudo -su, principalmente ao mostrar quando cada um é mais útil no dia a dia. Esse tipo de detalhe ajuda muito quem está começando a entender o comportamento do shell.

Continue explorando e trazendo comparações assim, são muito valiosas para fixar o aprendizado.

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!