Como posso adicionar um usuário como um novo sudoer usando a linha de comando?

Depois de adicionar um usuário usando adduser, Eu não posso vê-lo via >>Administração do sistema Usuários e grupos a menos que eu saia e faça login novamente. Isso é normal?

Além disso, posso definir um usuário recém-adicionado como um sudoer ou eu tenho que mudar isso somente depois de adicioná-lo? Como posso fazer isso através do shell?

Finalmente, posso excluir o Usuário original que foi criado na instalação inicial do Ubuntu ou esse usuário é de alguma forma 'especial'?

Apenas adicione o usuário ao sudo grupo:

sudo adduser <username> sudo

A alteração entrará em vigor na próxima vez que o usuário fizer login.

Isso funciona porque /etc/sudoers está pré-configurado para conceder permissões a todos os membros deste grupo (você não deve ter que fazer nenhuma alteração):

# Allow members of group sudo to execute any command%sudo   ALL=(ALL:ALL) ALL

Contanto que você tenha acesso a um usuário que esteja nos mesmos grupos do seu usuário "original", você pode excluir o antigo.


Realisticamente, também existem outros grupos dos quais seu novo usuário deve ser membro. Se você definir o tipo de conta de um usuário como administrador Nas configurações de Usuários, ele será colocado em pelo menos todos esses grupos:

adm sudo lpadmin sambashare

Como a configuração do sistema pode variar, sugiro dar uma olhada na saída de groups <username> para ver quais grupos estão normalmente em uso.

Eu fiz

sudo usermod -a -G sudo <username>

conforme recomendado aqui.

Abra o arquivo sudoers: sudo visudo vai abrir o /etc/sudoers arquivo no editor definido em $EDITOR (provavelmente GNU nano - defina a variável se não for o que você deseja, por exemplo export EDITOR="nano" e tentar sudo visudo novamente).

Adicione a linha abaixo ao final do arquivo.

username ALL=(ALL) ALL   # Change the user name before you issue the commands

Em seguida, execute WriteOut com Ctrl + O. O editor solicitará que você escreva o nome do arquivo. O padrão será um arquivo temporário usado por visudo para verificar se há erros de sintaxe antes de salvar no real sudoers arquivo. Premir Enter para aceitá-lo. Saia do editor nano com Ctrl + X.

Feito!

Uma coisa que tenho que acrescentar que tenho certeza de que muitas pessoas não entendem:

Uma vez que você já fez um adduser "username", você ainda pode voltar e fazer um adduser "username" sudo, e então adicionará esse usuário ao grupo corretamente.

Na verdade, não vai funcionar da primeira vez como sudo adduser username sudo. Isso lhe dará um erro. O que, em resumo, significa que você deve primeiro fazer a conta de usuário antes de adicioná-la a um grupo.

no CentOS, eu faço como raiz

echo ' username ALL=(ALL)   ALL' >> /etc/sudoers

O snippet a seguir concede acesso root ao nome de usuário sem fazer login explicitamente como root.

Certifique-se de que o Usuário é adicionado ao grupo sudo primeiro. Testado no Ubuntu 16.04.1 LTS.

sudo adduser username sudosudo sh -c "echo 'username ALL=NOPASSWD: ALL' >> /etc/sudoers"

Todos os membros do grupo admin, estão no Ubuntu por padrão permitido usar sudo, então a maneira mais fácil é adicionar a conta de usuário ao admin grupo.

Se você não quiser dar à conta de usuário acesso root completo, você precisa editar o arquivo/etc / sudoer com visudo (ele garante que você não tenha nenhum erro de sintaxe no arquivo e perca a capacidade de sudo completamente) de uma forma que você especifique quais comandos este usuário (ou um novo grupo) pode executar como root.

O manual sudoer lhe dará mais informações sobre isso. Você pode especificar quais comandos são permitidos por um usuário/grupo específico para serem executados como root.