Android

Como executar o comando sudo sem senha

Terminal para iniciantes 10 - sudo e root

Terminal para iniciantes 10 - sudo e root

Índice:

Anonim

O comando sudo permite que usuários confiáveis ​​executem programas como outro usuário, por padrão, o usuário root. Se você passa muito tempo na linha de comando, o sudo é um dos comandos que você usará com frequência.

Normalmente, para conceder acesso ao sudo a um usuário, você precisa adicioná-lo ao grupo sudo definido no arquivo sudoers . No Debian, Ubuntu e seus derivados, os membros do grupo sudo recebem privilégios de sudo, enquanto nas distribuições baseadas em RedHat como CentOS e Fedora, o nome do grupo sudo é wheel .

Cada membro deste grupo será solicitado a digitar a senha antes de executar um comando sudo. Isso adiciona uma camada extra de segurança e é a maneira preferida de conceder privilégios de sudo aos usuários.

No entanto, em algumas situações, como a execução de scripts automatizados, pode ser necessário configurar o arquivo sudoers e permitir que determinados usuários executem comandos sudo sem precisar solicitar a senha.

Adicionando usuário ao arquivo Sudoers

O arquivo sudoers contém informações que determinam os privilégios sudo de um usuário e grupo.

Você pode configurar o acesso ao usuário sudo modificando o arquivo sudoers ou adicionando um arquivo de configuração ao diretório /etc/sudoers.d . Os arquivos criados dentro deste diretório serão incluídos no arquivo sudoers.

Antes de fazer alterações, é uma boa idéia fazer backup do arquivo atual:

sudo cp /etc/sudoers{,.backup_$(date +%Y%m%d)} O comando date anexará a data atual ao nome do arquivo de backup.

Abra o arquivo /etc/sudoers com o comando visudo :

sudo visudo

Ao fazer alterações no arquivo sudoers, use sempre o visudo . Este comando verifica o arquivo após a edição e, se houver um erro de sintaxe, ele não salvará as alterações. Se você abrir o arquivo com um editor de texto, um erro de sintaxe resultará na perda do acesso ao sudo.

Na maioria dos sistemas, o comando visudo abre o arquivo /etc/sudoers com o editor de texto vim. Se você não tem experiência com o vim, pode usar outro editor de texto. Por exemplo, para alterar o editor para GNU nano, você deve executar:

sudo EDITOR=nano visudo

Role até o final do arquivo e adicione a seguinte linha que permitirá ao usuário “linuxize” executar qualquer comando com sudo sem ser solicitada uma senha:

/ etc / sudoers

linuxize ALL=(ALL) NOPASSWD:ALL Não se esqueça de alterar “linuxize” com o nome de usuário ao qual você deseja conceder acesso.

Por exemplo, para permitir apenas os comandos mkdir e mv você usaria:

/ etc / sudoers

linuxize ALL=(ALL) NOPASSWD:/bin/mkdir, /bin/mv

Uma vez feito, salve o arquivo e saia do editor.

Usando /etc/sudoers.d

Em vez de editar o arquivo sudoers, você pode criar um novo arquivo com as regras de autorização no diretório /etc/sudoers.d . Essa abordagem torna o gerenciamento dos privilégios do sudo mais sustentável.

Abra seu editor de texto e crie o arquivo:

sudo nano /etc/sudoers.d/linuxize

Você pode nomear o arquivo como quiser, mas geralmente é uma boa ideia usar o nome de usuário como o nome do arquivo.

/etc/sudoers.d/linuxize

Adicione a mesma regra que você adicionaria ao arquivo sudoers:

linuxize ALL=(ALL) NOPASSWD:ALL

Por fim, salve o arquivo e feche o editor.

Conclusão

Mostramos como editar os /etc/sudoers para que você possa executar os comandos sudo sem inserir uma senha. Isso é útil quando você possui scripts em que um usuário não raiz precisa executar tarefas administrativas.

sudo terminal