Leitores como você ajudam a apoiar o MUO. Quando você faz uma compra usando links em nosso site, podemos ganhar uma comissão de afiliado. Consulte Mais informação.

sudo é provavelmente um dos comandos Linux mais usados. Ele permite que você obtenha privilégios administrativos ou elevados em uma máquina Linux.

Normalmente, você precisa de privilégios elevados para executar ações como instalar software, gerenciar serviços e excluir arquivos críticos do sistema. Mas você sabia que existem alternativas ao comando sudo no Linux?

Por que executar comandos do Linux como outro usuário?

sudo é um comando muito importante porque permite executar comandos com privilégios de superusuário. Por padrão, usuários não root normalmente têm acesso limitado a recursos e arquivos no Linux.

Limitar o acesso a usuários no Linux é muito importante pelos seguintes motivos:

  • Ao controle: Ele permite que os administradores ou proprietários do sistema concedam acesso específico a determinados arquivos e programas. Isso é bom para estabilidade do sistema, privacidade e desempenho geral.
  • Segurança: Limitar o acesso a certas partes do sistema evita a exclusão acidental ou alterações no sistema. E também reduz a superfície de ataque do sistema.

sudo funciona bem e faz muito mais do que a maioria das pessoas o usa. Infelizmente, isso o torna muito inchado.

Felizmente, como acontece com a maioria das coisas no Linux, existem algumas ótimas alternativas ao comando sudo, e aqui estão algumas delas.

1. pkexec

O comando pkexec (PolicyKit Executive) é uma implementação front-end da estrutura PolicyKit, que fornece um conjunto de regras para conceder privilégios a usuários e processos.

pkexec permite executar um comando com os privilégios de um usuário ou função diferente, com base nas regras definidas em uma política especificada.

A ferramenta pkexec já está instalada no Ubuntu e em outras grandes distribuições do Linux. Caso não esteja instalado, veja como instalá-lo.

Em sistemas baseados em Debian, execute:

sudo apt atualizar && sudo apt instalar kit de políticas-1

No RHEL e distros semelhantes, execute:

sudo dnf instalar kit de políticas

Em distribuições Linux baseadas em Arch, use o seguinte comando:

sudo sudo pacman -S policykit

Como usar o pkexec

Para usar pkexec, você deve primeiro especificar a palavra-chave pkexec seguida pelo comando que deseja executar, seguido por quaisquer argumentos ou opções que o comando requer.

Por exemplo, para instalar o engraçado programa Linux: cowsay em seu sistema usando privilégios de superusuário, você usaria o seguinte:

pkexec apt instalar vaqueiro

Você também pode especificar um usuário ou função para assumir os privilégios, usando o --do utilizador opção seguida pelo nome do usuário ou função. Por exemplo, para executar o comando anterior com os privilégios do usuário administrador, você usaria o seguinte comando:

pkexec --user admin apt install cowsay

Além disso, você precisa digitar a senha do usuário ou função que você especificou no comando. Se você não tiver as permissões necessárias, receberá um erro.

2. faça como

O comando doas tem sua origem no sistema operacional OpenBSD. Ele permite que você execute um comando com os privilégios de um usuário ou função especificado.

É muito parecido com o comando sudo, mas é moderno, muito leve e fácil de configurar porque usa instruções concisas e legíveis.

Se não for, veja como você pode instalar o doas no Linux.

Configurando doas no Linux

Ao contrário do sudo e pkexec comandos, você deve configurar uma instância recém-instalada do doas antes de começar a usá-la. O arquivo de configuração está localizado em /etc/doas.conf. Se o arquivo de configuração não existir, crie um usando o comando touch ou qualquer outro programa de sua escolha.

Para dar ao usuário “mwizak” privilégios de superusuário em seu sistema, você pode adicionar a seguinte linha ao /etc/doas.conf arquivo:

permitir persistir: mwizak como raiz

Lembre-se de substituir o usuário "mwizak" no comando mencionado pelo nome de usuário correto.

Depois de salvar as alterações de configuração, tente instalar o cowsay usando o seguinte comando:

doas apt instalar vaqueiro

Para usar outro usuário, você pode usar o -você sinalizador seguido pelo nome de usuário. É semelhante ao --do utilizador sinalizador usado com o comando pkexec.

Por exemplo, para executar o comando anterior como administrador do sistema, execute:

doas -u admin apt instalar vaqueiro

3. su

O comando su é a abreviação de "alternar usuário". Ele permite que você execute comandos como usuários diferentes do usuário conectado no momento. Normalmente é usado para executar comandos que requerem privilégios de root, mas você pode simplesmente executar qualquer outro comando usando su.

A execução do comando su sem nenhum argumento pressupõe o usuário root, portanto, você deve saber a senha do usuário root para continuar. Se você mudasse para um usuário chamado john, simplesmente executaria o comando:

seu joão

Digite a senha do usuário john. Para voltar ao usuário original, basta executar o saída comando.

Esteja ciente de que a execução de comandos como usuário root geralmente não é recomendada porque você não é solicitado a fornecer um senha em cada comando executado, o que pode levar a consequências desastrosas, como excluir acidentalmente arquivos.

4. dzdo

dzdo é uma ferramenta de linha de comando usada para executar comandos com os privilégios de outro usuário, como superusuário ou usuário root. É semelhante ao comando sudo, que é comumente usado para o mesmo propósito. O comando dzdo está disponível principalmente no Oracle Linux.

Você pode usar o -você sinalizador para especificar o usuário cujos privilégios você deseja usar. Por exemplo, o seguinte comando executará o apt-get update comando com os privilégios do superusuário (root):

dzdo -u root apt-pegar atualizar

O sistema solicitará que você digite a senha apropriada para confirmar que você possui os privilégios necessários para executar o comando.

Use os controles de usuário corretos para segurança aprimorada no Linux

sudo é um comando comumente usado em sistemas Linux que permite que um usuário execute um comando com os privilégios do usuário root. Dependendo de suas necessidades, você pode usar qualquer alternativa ao sudo em seu fluxo de trabalho.

No Linux, também é importante atribuir os níveis de acesso adequados a arquivos e pastas para maior segurança.