O nome de usuário não está no arquivo sudoers. Este incidente será relatado


85

Estou executando o Ubuntu 12.04 no meu laptop usando o VMware Player. Não sei por que, mas tenho uma conta chamada "Conta de usuário", além da minha conta, que normalmente faço login para usar o Ubuntu. Bem, isso foi apenas um comentário secundário, mas basicamente tudo o que estou tentando fazer é instalar a biblioteca ncurses no Ubuntu. Eu tentei instalar o ncurses usando as seguintes linhas de comando:

sudo apt-get install libncurses5-dev
sudo apt-get install ncurses-dev

Quando tentei instalar o ncurses duas vezes usando os comandos acima, recebi o seguinte prompt no terminal:

[sudo] password for username

Quando digito minha senha, recebo a seguinte mensagem:

username is not in the sudoers file. This incident will be reported.

Até agora, tentei ativar a conta de usuário root ("Superusuário") seguindo as instruções neste link: https://help.ubuntu.com/community/RootSudo

Aqui estão algumas das coisas que o link sugeriu fazer:

Permita que outro usuário execute o sudo. Digite o seguinte na linha de comando:

sudo adduser nome de usuário sudo

Ou

sudo adduser nome de usuário sudo

efetuando login como outro usuário. Digite o seguinte na linha de comando:

nome de usuário sudo -i -u

Ativando a conta raiz. Digite o seguinte na linha de comando:

sudo -i

Ou

raiz do sudo passwd

Eu tentei todas as linhas de comando acima e, depois de digitar cada comando, minha senha foi solicitada. Depois de inserir minha senha, recebi a mesma mensagem de quando tentei instalar o ncurses:

fsolano is not in the sudoers file. This incident will be reported.

Eu não tenho nenhum comentário ainda tão vazio comigo aqui ... Pergunta. fsolano é o primeiro usuário que você fez com a instalação do ubuntu? geralmente isso deve ter privilégios de administrador, se você executar uma função de administrador em um sentido gráfico, isso funciona para você? IE, se você abrir a GUi para gerenciamento de usuários e tentar fazer algo administrativo, isso funciona? ou dizer-lhe que você não estiver como root

A mesma pergunta foi feita aqui também? superuser.com/questions/866582/…
shubham

se você tiver um usuário root com a senha definida, poderá fazer login no root usando sue adicionar urself ao grupo sudo àdduser username sudo, precisará inicializar com live cd / usb e chroot no sistema instalado; ele fará o login como root por padrão. , defina uma senha de root para os próximos casos passwde adicione-se ao sudo a partir daí, e reinicie, você terá seu nome de usuário adicionado ao sudo e também uma senha de root, caso, se o sudo ainda não estiver funcionando, você pode lidar com isso ....
Jonah

Respostas:


57

Quando isso aconteceu comigo, tudo o que eu tinha que fazer para consertar era:

Etapa 1. Abra uma janela de terminal, CTRL+ ALT+ T no meu sistema (Debian KDE depois de configurar como tecla de atalho)

Etapa 2. Raiz inserida usando o comando su root

Etapa 3. Insira a senha root

Etapa 4. Insira o comando apt-get install sudo -ypara instalarsudo

Etapa 5. Adicione o usuário ao arquivo sudoers inserindo adduser username, coloque seu nome de usuário no lugar deusername

Etapa 6. Defina as permissões corretas para o arquivo sudoers inserindo chmod 0440 /etc/sudoers

Etapa 7. Digite exite aperte Enteraté fechar a janela do terminal. Encerre o sistema completamente e reinicie.

Etapa 8. Abra outra janela do terminal.

Etapa 9. Tente qualquer comando sudo para verificar se seu nome de usuário foi adicionado corretamente ao arquivo sudoers. Eu usei sudo echo "Hello World!". Se o seu nome de usuário foi adicionado corretamente à lista de sudoers, você receberá Hello World!a resposta do terminal!


15
-1: cd -vai não vá para o diretório em casa, mas com o mais recente outro diretório. sudo -vai não pedir a sua senha de usuário, mas para você senha de root. Você não editar /etc/sudoersmanualmente usar visudopara isso. Os sistemas ubuntu típicos não têm senha de root, mas dependem completamente do sudo.
Michas

@michas Você não pode usar o visudo sem o sudo no Debian. visolução também não é possível porque somente leitura. O Gedit funciona no meu caso.
Léo Léopold Hertz,

No debian 8 você pode usar o vi sem o sudo como root. Para gravar no arquivo somente leitura, use: wq!
The Oracle

Isso também funciona para mim, a grande ajuda de fato!
Arefe

Obrigado pela sua resposta. Mas eu não sou capaz de executarsu -
Vishal

42

Siga o link para redefinir sua senha de administrador [parece que você nomeou sua conta de usuário administrador como 'usuário' :)]

https://askubuntu.com/questions/24006/how-do-i-reset-a-lost-administrative-password

Depois disso, faça o login como usuário administrador e execute o seguinte.

sudo usermod -aG sudo,adm fsolano

Agora você pode fazer o login como 'fsolano' e poder executar o comando sudo.


11
Desculpe, esqueci de mencionar que resolvi esse problema há muito tempo. Esta é a solução para o problema que tive e possivelmente mais alguém pode ter.
fsolano94

3
Ainda recebo a mensagem depois de digitar isso também adduser NAME sudo. Eu acho que deve haver algo mais. Estou usando o Debian 7.8.
Tomáš Zato

Esta não é uma solução suficiente no Debian 8.5. A proposta de ShrikantKhawale com pequenas adições é a correta aqui.
Léo Léopold Hertz,

3
@masi O truque acima faz o trabalho no Debian 8.5 (pelo menos aqui), mas somente depois que você sair e voltar novamente.
Jcoppens

O @jcoppens está certo, também funciona para o Debian 8.6, somente após o logout e o login #
hello_earth

13

A /etc/sudoerslista de arquivos de configuração , que tem permissão para executar quais comandos e qual usuário.

No ubuntu, esse arquivo contém uma linha que permite que todos os usuários do sudogrupo executem comandos como o rootusuário.

Para verificar quais usuários estão no grupo sudo, você pode digitar getent group sudo. Você também pode verificar os grupos do seu usuário atual digitando id.

Provavelmente, seu usuário atual não está no grupo sudo e, portanto, não tem permissão para usar o sudocomando.

Efetue login como um usuário habilitado para sudo, se desejar executar sudo.


Bem, isso é exatamente a coisa. Eu faria o login como administrador ou usuário root, mas esqueci a senha quando instalei o Ubuntu pela primeira vez na minha máquina.
precisa saber é o seguinte

sudo: x: 27: usuário (im não tem certeza o que o x ou 27 é, mas eu sou positivo que o usuário é a conta de usuário que eu não sei / lembro a senha para)
fsolano94

@ fsolano94, inicialize em alguma forma de ambiente de resgate (diretamente ou inicialize a partir da mídia de instalação) e altere a senha root. Ou edite o /etc/sudoersarquivo (de preferência usando visudo(1)).
vonbrand

6

Estou tendo o mesmo problema com o Kali a qualquer momento que desejar adicionar newuser ao grupo sudo digitando este comando:

usermod -aG sudo newuser

e editando a seção correta em /etc/sudoers. Toda porcaria!

Minha correção para esse absurdo é copiar a linha de raiz abaixo dela e alterar a raiz para newuser:

# User privilege specification
root    ALL=(ALL:ALL) ALL

newuser ALL=(ALL:ALL) ALL

Lembro-me do método usual com o usermod usado para funcionar, mas é um bug nos últimos dois anos? é realmente um absurdo. de qualquer forma, se alguém tiver uma resposta melhor, compartilhe-a, por favor :)


O mesmo problema no debian regular (9); edição manual /etc/sudoersfez o truque
Zoe the transgirl 14/01

4

Faça isso para redefinir a senha do seu usuário administrador.

https://help.ubuntu.com/community/LostPassword

Então, você poderá conceder permissão ao sudo ao seu usuário comum com

sudo adduser username sudo

como você postou em sua pergunta original.

A propósito: por que você está instalando ncurses? Você está compilando alguma coisa?


Estou programando o Tetris em C e estou usando maldições como uma plataforma cruzada para a interface gráfica do usuário. E sim, eu vou seguir o link
fsolano94

1

Você também pode adicionar um usuário ao grupo sudo para todo o acesso certo:

  1. Indo para o usuário do diretório raiz por sudo su(ubuntu 16.04 LTS)
  2. Em seguida, insira sua senha de usuário atual
  3. digite sudo adduser <username> sudoonde username é o nome do usuário que você deseja adicionar na lista de sudoers
  4. Para verificar se o usuário necessário foi adicionado, digite com sucesso o getent group sudoque mostrará a lista de usuários sudo

Olá, bem-vindo ao Unix SE e parabéns por uma boa primeira resposta. Corrigi um pouco sua formatação, você pode aprender mais sobre isso clicando em "ajuda de sintaxe" ao escrever uma postagem.
GnP 02/09

11
Esta não é uma boa resposta. (1) A pergunta afirma que sudonão funciona para o usuário. (2) A resposta sudo adduser <username> sudojá foi dada.
G-Man

0

Se você tiver outro usuário root / admin que não seja 'fsolano', isso não está no arquivo sudoers. Este incidente será relatado:

check sudo enabled users (groups)
# getent group sudo 
sudo:x:27:xyz,abc 

como o usuário 'fsolano' foi alterado para usuário padrão e, se você tiver outro usuário com privilégios de root, efetue login através da raiz e altere 'fsolano' para administrador usando "Contas de Usuário".


-1

A maneira mais simples de adicionar um usuário ao sudoersarquivo é executar o comando abaixo como usuário com permissão para executar gpasswd:

sudo gpasswd -a username sudo

Isso não funciona no Debian 8.5.
Léo Léopold Hertz,

-1

1.Você pode verificar se você faz parte do grupo sudo ou não, usando o comando abaixo

groups username ===> it will lists the groups for which he belongs too

Podemos verificar pelo script abaixo também

h=`groups username| awk -F ":" '{print $2}'| grep -io 'sudo'`
if [[ $h == "sudo" ]]
then
echo "user praveen is part of group sudo"
else
echo "Need to add user to group sudo"
echo "Swictch to root and add user"
fi
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.