É possível alterar o shell root do usuário?

É possível alterar o shell root do usuário?

Acho que estou enfrentando um problema não tão comum. escrevi

chsh -s /bin/false root

e agora não consigo fazer login como root. Existe alguma possibilidade de como eu poderia fazer login root? Quando tento o comando

chsh -s /bin/true root

Recebo a resposta de que não posso alterar o shell roote, claro, quando tento editar o /etc/passwdwith nano, recebo uma mensagem informando que não tenho permissão para fazer isso.

Então, há alguma solução em que eu possa fazer login root?

Responder1

Faça um:

ssh root@localhost /bin/bash

Você não receberá um prompt do shell. No entanto, se você digitar ls e pressionar enter, verá a saída. Então você pode usar este comando sed para redefinir seu shell root:

/usr/bin/sed -i -e 's|^\(root.*:\)[^:]*$|\1/bin/bash|g' /etc/passwd

Com base na sua distribuição, o comando sed pode estar em /bin/sed.

Obviamente esta é uma medida desesperada.

Responder2

Provavelmente a maneira mais fácil é inicializar no modo de recuperação da mídia de instalação e consertar /etc/passwddessa forma.

Responder3

sudo /bin/bashdeveria fazer o trabalho. Você executará bashcom privilégios de superusuário, portanto, editar /etc/passwdou executar chshnão deve ser um problema.

Responder4

Se você não tiver o sudo instalado, poderá instalá-lo facilmente e sudo /bin/bashdeverá funcionar. Qualquer distribuição Linux pode usar sudo.

Além disso, se você receber uma solicitação de senha, precisará usar a autenticação de chave pública e ativar o sudo sem senha. use isso para configurar issohttps://spinupwp.com/doc/passwordless-sudo/

Você deve usar autenticação de chave pública ssh neste caso ^^.

informação relacionada