O que é Sudo no Linux e como usá-lo

Considere o quadrinho acima do excelente webcomic XKCD . O preguiçoso na cadeira quer que seu amigo faça um sanduíche para eles, mas eles não têm autoridade para fazê-lo. Isto é, até que ele invoque o poderoso comando sudo. Depois disso, um sanduíche será feito de uma maneira ou de outra. 

Embora tentar sudo em uma pessoa na vida real provavelmente não seja tão eficaz, é o comando mágico que supera todos os obstáculos no mundo do Linux . O que é sudo? Por que isso existe mesmo? A resposta está em como o Linux lida com as permissões.

Entendendo as permissões de usuário do Linux(Linux User Permissions)

O Linux(Linux) é considerado um sistema operacional seguro devido à forma como lida com as permissões. Embora sistemas operacionais como o macOS (que compartilhou um ancestral com o Linux(Linux) ) e o Windows(Windows) sejam agora mais parecidos com o Linux(Linux) nesse sentido, o sistema operacional de código aberto ainda é um pouco único.(Open Source)

Entender como o Linux lida com as permissões torna muito mais fácil entender o comando sudo. Todos os sistemas operacionais modernos têm um nível de permissões de usuário “administrador” ou “raiz”. Se você tiver uma conta de administrador ou root, poderá alterar qualquer configuração, excluir quaisquer dados e geralmente fazer o que quiser com o computador. 

Isso inclui coisas que você provavelmente não deveria fazer que podem levar à perda de dados ou à necessidade de uma limpeza completa e reinstalação.

O Linux(Linux) não torna as permissões de nível de usuário root o padrão. Em vez disso, sua conta não pode acessar as partes realmente sensíveis do sistema sem elevar seu nível de permissão. Isso significa que o sistema solicitará que você digite a senha do administrador quando quiser fazer algo fora do comum usando uma interface gráfica. 

No entanto, quando você deseja usar a linha de comando do Terminal para fazer as coisas, o sudo é a maneira mais segura e eficiente de fazer isso.

Sudo e o Terminal

Existem duas maneiras de se conceder permissões elevadas no Linux . Uma é fazer login como usuário root permanentemente. O problema com isso é que qualquer outra pessoa que possa acessar o computador pode causar estragos, e até mesmo você pode fazer isso por acidente. O Sudo(Sudo) eleva suas permissões apenas por um curto período de tempo para executar os comandos específicos que o seguem.

Sintaxe do Sudo

A sintaxe do Sudo (o formato do comando) é simples. Basta(Simply) digitar “sudo” seguido do comando que você deseja executar.

Por exemplo, “sudo apt-get update” atualizará todos os repositórios de aplicativos listados no arquivo relevante. Se você tentar executá-lo sem sudo, receberá uma mensagem de erro informando que não tem permissão. Aliás, este é geralmente o primeiro comando sudo que você deseja executar após uma nova instalação de sua distribuição  Linux favorita.(Linux)

O “Su” em Sudo

O “su” em sudo é a abreviação de “superusuário” e é um comando autônomo. O comando “su” permite que você altere os privilégios de usuário para os quais o sudo o eleva. 

Embora sudo eleve você a root temporariamente, su muda você para outro usuário com privilégios adequados. Isso pode parecer uma distinção sem importância, mas há boas razões para alterar a conta para a qual o sudo eleva um usuário. 

Em primeiro(First) lugar, alterar a conta significa que os usuários comuns não sabem a senha do root. Segundo, há um log de todos os comandos sudo, o que significa que o administrador do sistema (root) pode procurar quem emitiu os comandos su.

A sintaxe para su é essencialmente a mesma que sudo:

Su USERNAME -c COMMAND

Substitua USERNAME(Replace USERNAME) pelo usuário desejado para executar o comando e COMMAND pelo comando do Linux que você deseja executar.

Se você quiser executar vários comandos como outro usuário, basta usar:

Su USUÁRIO(Su USER)

Substitua USER(Replace USER) pela identidade da conta de usuário desejada.

Se você usar o su sozinho, o Linux mudará para a outra conta de usuário até que você use o comando “exit”. É importante lembrar que este ou o próximo usuário que acessar o terminal nessa sessão ainda terá permissões elevadas. É por isso que geralmente é melhor usar sudo em vez de su.

O limite de tempo do Sudo

A primeira vez que você usar um comando sudo, você terá que digitar uma senha. Então, essa senha permanecerá válida por 15 minutos. Você pode alterar esse padrão executando o comando sudo visudo e alterando “timestamp_timeout=" para um valor maior ou menor. No entanto, não recomendamos que você faça isso, a menos que tenha um bom motivo para estender ou encurtar por quanto tempo uma senha sudo permanece válida.

Interruptores de opção Sudo

Embora a sintaxe do sudo seja simples, vale a pena conhecer várias opções. Esses comandos abrem informações adicionais ou ajudam a controlar a sessão sudo:

  • -h mostra informações de sintaxe e comando para sudo.
  • -V exibe a versão atual do sudo em sua máquina.
  • -v atualiza o limite de tempo do sudo, reiniciando o relógio.
  • -l lista os privilégios do usuário.
  • -k mata a sessão sudo atual imediatamente, removendo privilégios elevados.

Existem muitas outras opções incorporadas ao sudo, e você pode vê-las usando a primeira opção -h listada acima.

A captura de tela acima é o que resulta quando você usa a opção de ajuda.

Comandos Sudo úteis

Então, quais comandos habilitados pelo sudo todo usuário do Linux deve conhecer? Já abordamos sudo apt-get update, mas observe também:

  • Sudo apt-get upgrade atualizará todos os pacotes instalados.
  • Sudo apt-get install <package-name> instala o software de sua escolha; basta alterar o nome do pacote para aquele que você deseja instalar.
  • Se você não souber o nome do pacote, use dpkg –list .
  • Se você deseja remover um pacote instalado do terminal, use sudo apt-get remove <package-name (novamente substituindo o nome do pacote específico em questão).

Esses são provavelmente os primeiros comandos sudo que você terá que usar, mas como você aprendeu acima, qualquer comando pode seguir o sudo, mas você deve usar apenas aqueles que precisam de privilégios mais altos com ele.



About the author

Eu sou um engenheiro de windows,ios,pdf,errors,gadgets com mais de 10 anos de experiência. Trabalhei em muitos aplicativos e estruturas do Windows de alta qualidade, como OneDrive for Business, Office 365 e muito mais. Meu trabalho recente incluiu desenvolver o leitor de pdf para a plataforma Windows e trabalhar para tornar as mensagens de erro mais claras para os usuários. Além disso, estou envolvido no desenvolvimento da plataforma ios há alguns anos e estou muito familiarizado com seus recursos e peculiaridades.



Related posts