[DICA] Um pouco sobre login de root e sudo
O artigo traz uma visão geral sobre o uso do root e do sudo. Se quiserem se aprofundar mais no conhecimento, recomendo os artigos do nosso amigo @Blau:
https://debxp.org/artigos/substituir-usuario-o-comando-su
https://debxp.org/artigos/um_pouco_mais_sobre_sudo_e_root
Login de root?
Quando precisamos executar tarefas administrativas no sistema, precisamos obter privilégios elevados, e o super usuário root é quem pode executar qualquer comando no Fedora.
Como obter acesso ao root?
Existem diferenças entre o Fedora Workstation e as Spins do Fedora:
Root no Fedora Workstation
Durante a instalação do Fedora Workstation, o acesso ao super usuário root não é configurado. Podemos configurar no pós-instalação (alerta de opinião pessoal aqui: você nunca vai precisar disso) configurando uma senha para o root, com o abaixo:sudo passwd root
E para fazer o login com o root, podemos usar o comando abaixo:su -
Existem muitas formas de fazer esse login, mas vou detalhar o uso do su no final do artigo (incluindo a explicação para o sinal de menos (-) no final do comando su.
Veja na imagem:
Root nas Spins do Fedora
Durante a instalação de qualquer spin do Fedora, o usuário root já vem habilitado e podemos configurar sua senha no Anaconda (instalador do Fedora).
Se não quisermos o acesso ao root numa das spins, podemos bloquear o acesso ao root, também no Anaconda (lock root account)
Veja a criação da conta do root na imagen:
O que é o sudo?
sudo é o comando que usamos para executar tarefas com privilégios de outro usuário. O mais comum é usar para obter privilégios do super usuário root, mas não é o único uso possível.
Sudo pode significar super user do (para tarefas como super usuário) ou substitute user do (para tarefas com privilégios de outro usuário qualquer).
Como obter o sudo
O pacote sudo já vem instalado no Fedora Workstation e também nas spins do Fedora, mas existem algumas diferenças entre Workstation e Spins.
Sudo no Fedora Workstation
No Fedora Workstation, o primeiro usuário criado já possui acesso ao sudo. Após a instalação do Workstation, no primeiro boot, o sistema executa o gnome-initial-setup, onde precisamos criar o usuário e sua senha. Esse usuário já será um sudoer (pessoa que pode acessar o sudo).
Criação do usuário no gnome-initial-setup
Criação da senha para o usuário
Sudo nas Spins do Fedora
Durante a instalação de uma spin do Fedora, nós podemos dar acesso de administrador ao usuário criado, para que ele possa usar o sudo. Se não marcarmos a opção "Tornar este usuário administrador", o usuário não terá acesso ao sudo.
Usuário como administrador
Finalmente: usando o sudo e o login de root
Usando o sudo
Para executar alguma tarefa administrativa com o sudo, é só escrever sudo no início do comando que queremos executar. Conselho: Usem isso com cuidado, pessoal. Exemplos:
sudo dnf upgrade
sudo rm /etc/yum.repos.d/algum-repositorio.repo
Mas o sudo também serve para executar comandos com outro usuário. Sei que é raro, mas é bom mencionar. Exemplo:
sudo -u leonardo mkdir projetos
O comando acima cria o diretório (ou pasta) projetos, mas com as permissões do usuário leonardo.
Usando o login de root
Para efetuar o login como root, use o comando (existem várias formas, e eu recomendo uma leitura no manual do comando: man su
), use o comando abaixo:
su -
Mas... por que o "menos" no final do comando?
Quando usamos o comando su, estamos usando o Substitute User, ou seja, estamos substituindo o usuário atual por outro. Se não especificarmos o nome do usuário para o qual queremos mudar, o sistema entende que queremos substituir o usuário atual pelo root. Nessa substituição, precisamos carregar o ambiente do novo usuário (incluindo o do root), e esse "menos" faz isso.
Se executarmos o comando su leonardo
, mudaremos para o usuário leonardo, mas permaneceremos com variáveis de ambiente do usuário anterior. O mesmo ocorre quando mudamos para o root: ao usarmos o comando su
, mudamos para o root, mas permanecemos usando as variáveis de ambiente do usuário anterior. Isso pode não fazer diferença para a maioria das coisas no Fedora, mas é muito importante sabermos a diferença caso algo dê errado. Usando o comando su -
(ou su --login
, ou su - root
, etc...) nós entramos no login do root carregando o ambiente do root. Vou mostrar a diferença nas imagens abaixo.
Logando com su
- repare no PATH, o root permanece com o PATH do usuário leandro.
Logando com su -
- repare que o PATH do root é diferente.
Criando um novo usuário com poderes de sudoer
Usando interface gráfica
Se você tiver a opção de fazer pela interface gráfica, pode ser mais fácil. Explore o sistema, nem tudo precisa ser por comando.
Crie um novo usuário
Configure o acesso de administrador
Usando a linha de comando
Use o comando useradd, mas não se esqueça do parâmetro -m
ou --create-home
sudo useradd -m leonardo
Crie uma senha para o usuáriosudo passwd leonardo
Adicione o usuário ao grupo wheelsudo usermod -aG wheel leonardo
Obs.: O grupo wheel é sudoer
Outra Obs.: Você nunca, ou quase nunca, vai precisar mexer no arquivo de sudoers. Caso precise ou queira, não abra o arquivo /etc/sudoers para edição, mas use o comando sudo visudo
para isso.
Considerações e opinião pessoal
Eu recomendo o uso do sudo, sempre. No entanto, o uso do root pode ser vantajoso caso você precise executar muitos comandos seguidos como administrador (muitos mesmo). Se for para executar pouca coisa, não é necessário usar o root.
Digo isso porque, frequentemente, vejo pessoas que se esquecem de desfazer o login de root após o comando, e acabam usando o root para coisas que não necessitam de privilégios elevados, gravando coisas como root dentro da home do usuário, para depois ter que alterar as permissões do arquivo e poder acessar como usuário normal, etc.
Use sudo ou root, mas use sempre com cuidado e nunca execute comandos sem saber o que eles fazem.
Abraços, pessoal!
Comentários
-
Ficou excelente. Revisado e sem erro algum.
0 -
0
-
Excelente o seu post.
Gostaria, se vc me permite, de saber a sua opinião sobre duas versões do Fedora: o Fedora Cinnamon e o Fedora Silverblue?
Qual a melhor dessas 2 opções para instalação em um notebook? Muito obrigado!0 -
Obrigado, @victorhcardoso
Comparar o Fedora Cinnamon com o Silverblue não é uma comparação direta. Num dos aspectos, seria comparar Cinnamon com GNOME e escolher o que vc prefere. Mas o Silverblue é um sistema totalmente diferente, com tecnologias diferentes, especialmente ostree e flatpak.0 -
Ótimo, como sempre!
Se me permite recomendar um complemento sobre o assunto, aqui estão dois artigos da comunidade debxp:
0 -
Obrigado, @Blau, já vou ler agora!
0 -
@Blau, coloquei os links no começo do artigo, para o pessoal que quiser mais profundidade no assunto.
0 -
Perfeito! Valeu!
0 -
Perfeito!!
0 -
Show de bola! Depois de alguns meses sem precisar, tive que configurar agora o usuário root. Não me lembrava deste detalhe que o Workstation não vem configurado na instalação. Obrigado pela informação! Excelente conteúdo Leandro Ramos!
0
Salas de discussão
- 721 Todas as salas de discussão
- 5 Eventos
- 402 Fedora
- 7 CoreOS
- 137 Spins
- 11 CINNAMON
- 28 GNOME
- 63 KDE
- 10 LXDE
- 4 LXQT
- 13 MATE
- SOAS
- 3 XFCE
- 13 Server
- 84 Workstation
- 33 SilverBlue
- Atomic
- 3 Labs
- ARM®
- 3 Segurança
- 7 Servidores
- 222 Tutoriais
- 6 Críticas e Sugestões
- 16 Novidades e anuncios
- 5 CentOS
- 18 Games
- 31 Hardware
- 8 Linguagens de programação