Pesquisa de site

Quem é raiz? Por que o root existe?


Você já se perguntou por que existe uma conta especial chamada root no Linux? Você sabe quais são as práticas recomendadas para usar esta conta? Você está ciente dos cenários em que deve ser usado e daqueles em que não é? Se você respondeu “sim” a uma ou mais dessas perguntas, continue lendo.

Neste post iremos fornecer uma referência com informações sobre a conta root que você deseja manter à mão.

O que é raiz?

Para começar, tenhamos em mente que a hierarquia de diretórios em sistemas operacionais do tipo Unix foi projetada como uma estrutura semelhante a uma árvore. O ponto de partida é um diretório especial representado por uma barra (/) com todos os outros diretórios inicialmente ramificando-se a partir dele. Como isso é análogo a uma árvore real, / é chamado de diretório raiz.

Na imagem a seguir podemos ver a saída de:

tree -d / | less

que ilustra a analogia entre / e a raiz de uma árvore.

Embora as razões por trás da nomeação da conta root não sejam muito claras, é provável que seja devido ao fato de que root é a única conta com permissões de gravação dentro de / .

Além disso, root tem acesso a todos os arquivos e comandos em qualquer sistema operacional semelhante ao Unix e é frequentemente chamado de superusuário por esse motivo.

Além disso, o diretório root (/) não deve ser confundido com /root, que é o diretório inicial do usuário root. Na verdade, /root é um subdiretório de /.

Obtendo acesso às permissões de root

Quando falamos em privilégios de root (ou superusuário), nos referimos às permissões que tal conta possui no sistema. Esses privilégios incluem (mas não estão limitados a) a capacidade de modificar o sistema e conceder a outros usuários certas permissões de acesso aos seus recursos.

O uso imprudente desse poder pode levar à corrupção do sistema, na melhor das hipóteses, e à falha total, na pior. É por isso que as seguintes diretrizes são aceitas como práticas recomendadas quando se trata de acessar os privilégios da conta root:

Inicialmente, use a conta root para executar o visudo. Use esse comando para editar /etc/sudoers para conceder os privilégios mínimos de superusuário que uma determinada conta (por exemplo, supervisor) precisa.

Isto pode incluir, por exemplo, a capacidade de criar (adduser) e modificar (usermod) contas de usuário – e nada mais.

Seguindo em frente, faça login como supervisor e use o sudo para realizar tarefas de gerenciamento de usuários. Você notará que a tentativa de executar outras tarefas que exigem permissões de superusuário (remoção de pacotes, por exemplo) deverá falhar.

Repita as duas etapas acima sempre que necessário e, quando terminar, use o comando exit para retornar imediatamente à sua conta sem privilégios.

Neste ponto, você deve se perguntar: há alguma outra tarefa que aparece periodicamente que precisa de privilégios de superusuário? Nesse caso, conceda as permissões necessárias em /etc/sudoers para uma determinada conta ou grupo e continue evitando o uso da conta root na medida do possível.

Resumo

Este post pode servir como referência para o uso adequado da conta root em um sistema operacional tipo Unix. Fique à vontade para adicioná-lo aos seus favoritos e retornar quantas vezes quiser!

Como sempre, envie-nos uma mensagem usando o formulário de comentários abaixo se tiver alguma dúvida ou sugestão sobre este artigo. Estamos ansiosos para ouvir de você!