Para editar o arquivo sudoers
, primeiro você precisa ser root. Meu palpite, a partir dessa pergunta, é que você não ativou o acesso root para a sua instalação, correto?
Se for esse o caso, você precisa mudar isso:
- No prompt do gerenciador de partida, navegue até a entrada comum da qual você inicializa.
- Em vez de pressionar Enter pressione e para editar primeiro os parâmetros da linha de comando do kernel
- No editor que é aberto, use as teclas de seta para encontrar a linha que começa com
linux
, vá até o final e anexeinit=/bin/sh
a ela. Isso substituirá seu sistemainit
temporariamente pelo shell do seu sistema e, comoinit
é iniciado pelo root, esse será um shell raiz. - Pressione CTRL + X para inicializar a entrada modificada
- Depois de ter um shell de root, você geralmente precisa remontar o sistema de arquivos raiz de leitura / gravação em vez de somente leitura. Digite o comando
mount -o remount,rw /
para fazer isso. - Você pode ativar o acesso root digitando uma senha para root: use o comando
passwd
para isso. - Geralmente você edita arquivos no modo texto usando um editor de modo de texto como vim ou emacs , nenhum dos quais o Debian envia por padrão. O que o Debian envia por padrão é uma versão leve de
vim
chamadovim.tiny
. - No caso específico do arquivo
sudoers
, você deve editá-lo usandovisudo
porque ele faz a verificação de sintaxe antes de gravar o arquivo. Se você seguir este procedimento para ativar a conta raiz, não precisará adicionar seu usuário comum ao arquivosudoers
. - Com o acesso à raiz ativado, use
reboot
para inicializar normalmente (as edições na etapa 3 são temporárias e desaparecem na reinicialização). Quando confrontado comtty1
, você pode efetuar login como root (com a senha criada na etapa 6) e reinstalar sua área de trabalho.
Nota
Como foi observado por @jthill nos comentários abaixo, você pode optar por não permitir o acesso root e conceder ao seu usuário regular sudo (isso é possivelmente mais seguro). Nesse caso, em vez de usar passwd
para dar uma senha à sua conta root, você deve usar:
usermod -aG regular_user_name sudo
Isso provavelmente só funcionará no Debian (e seus derivados), pois tem a entrada:
%sudo ALL = (ALL) ALL
que basicamente concede acesso sudo irrestrito a todos os membros do grupo sudo
. O comando usermod
acima foi criado para adicionar seu usuário comum ao grupo sudo
. A presença da linha acima não é garantida para outras distros. Algumas distros usam um grupo chamado wheel
em vez de sudo
para esse propósito, por exemplo.