Sudo su, porque não usar?

Categoria: Ubuntu | Palavras-chave: , , ,

tirinha-sudo

Uma prática muito usual entre novos e experientes usuários é a utilização do comando sudo. Ele é muito útil por permitir executar comandos administrativos sem que seja necessário logar-se com o usuário root. Porém, vejo muita gente cometendo um erro e esse é muito difundido por sites que deveriam difundir a maneira correta de se fazer as coisas.

A primeira coisa que temos que corrigir é que o sudo não serve apenas para executar programas como root, ele serve para executar como qualquer outro usuário, depende da política de segurança em suas configurações, o padrão do Ubuntu é executar como root.

A ideia deste post não é falar sobre todas as possibilidades apresentadas pelo comando sudo, mas sim falar sobre uma prática que não é a ideal, o uso do comando “sudo su”. Já vi muita gente dizendo que usou o comando “sudo su” e não conseguiu executar comandos ou obteve erros na execução, claro que só fiquei sabendo que tinha sido usado o “sudo su” depois de muita conversa.

Ao usar o comando “sudo su”, você usará o usuário root para fazer suas tarefas sem precisar digitar novamente o comando sudo, porém, você não fez o login como usuário root e arquivos essenciais não foram carregados como o .profile e o .login além de variáveis de ambiante que são específicas do usuário root.

Como resolver este problema então?

Simples, utilize o comando “sudo -i”. Desta forma você continua tendo a mesma funcionalidade, mas agora você será realmente o usuário root e terá carregado tudo o que é necessário para realmente ser considerado um super usuário no Linux, sem precisar habilitar este usuário.

Mesmo mostrando como fazer, eu ainda prefiro não utilizar nenhum dos comandos, o ideal é usar o comando “sudo -i comando” que terá o mesmo efeito, mas será só para o comando que está executando, o que evita problemas futuros.

Gostou da dica? Compartilha nas suas redes sociais!

Publicado em 25 de outubro de 2013 | 10 Comentários

Ivan Brasil Fuzzer

Ivan Brasil Fuzzer

Faço parte do grupo Tchelinux(http://www.tchelinux.org). O Tchelinux é um grupo de voluntários que trabalha com software livre e ainda acredita que boas coisas podem ser feitas nesta comunidade; desde que saibamos repassar aos que estão iniciando que Software Livre é um aprender e repassar o conhecimento incessante. Sou líder do Ubuntu-BR-RS juntamente com a Marta Vuelma. Tentamos divulgar a distribuição e auxiliar novos usuários por todo o estado do Rio Grande do Sul, as vezes em outros estados também. Sou um amante incondicional de software livre. Vivo apaixonado pelo Ubuntu.

Mais posts do autor (856)

10 Comentários

  1. jic disse:

    hmmm

    costumava usar ” sudo su – ” para ficar como root usando as variáveis de sistema e configs

    ” sudo -i ” tem alguma diferença?

  2. Laercio da Silva Motta disse:

    Existe o “sudo su -” com a opção – (menos/hífen, como quiser) que sobe as variáveis de ambiente para o usuário root, porem, ainda prefiro o sudo -i, alem de ser menor, é um sub-processo a menos aberto..

  3. Pq não usar a configuração:
    Defaults always_set_home
    Defaults env_reset

    No arquivo /etc/sudoers?

  4. Rafael Almeida disse:

    Na verdade apenas o comando “sudo su” são dois comando distintos.
    sudo e su. Essa combinação é utilizada normalmente quando se libera um aceso externo (ssh) sem expor o usuário root, e deseja permitir que o usuário logado possa aceder como root após logar como usuário normal sem necessidade de informar a senha do usuário root, para tal é necessário configurar este comportamento no arquivo “/etc/sudoers”.

    Sendo assim o comando su é o responsável por “aceder” o usuário ao perfil root. Mas este comando tem vários parâmetros, por padrão ele muda o usuário mas não recarrega o perfil do root, para isto pode se usar o “su -” ou “su -l” isso faz com que o sistema mude para o usuário root com o mesmo comportamento de um novo login.

    PS: O objetivo não é corrigir, apenas contribuir. Afinal é com trocas de experiências que evoluímos, e sempre aprendo muito por aqui.

    Abraços e parabéns pelo site, afinal sou um verdadeiro fã do Ubuntu, usuário a desde a versão 08.04.

  5. Rafael Lain disse:

    O Sudo é muito útil, mas quando se fala em segurança de sistemas, não é recomendado utilizá-lo e tampouco deixá-lo habilitado.
    O mais recomendado (até onde sei) é usar o su (ou login) e logar como root no sistema, caso seja um servidor, não permitir acesso do root pelo SSH, obrigando a logar com um usuário comum e este “relogar” como root.

    • Rafael,

      Bem pelo contrário, o recomendado é utilizar o sudo e não ter o root habilitado no sistema. Até estou conversando com especialistas em segurança para fazermos um opencast sobre hardening para explicar esse tipo de coisa.

  6. Boa noite pessoal! Sou novo no Linux e no Ubuntu. Como fazer para esses comandos acima funcionar, pois perdi a senha root e comigo não funcionou nenhum a não ser o su -l que pediu minha senha mas acontece que não lembro mas. Grato

  7. Luiz disse:

    Perdi a senha do root, oq faço?

Deixe seu comentário

Website