제가 겪고 있는 문제는 흔하지 않은 것 같아요. 나는 썼다
chsh -s /bin/false root
이제 로그인할 수 없습니다 root
. 로그인할 수 있는 방법이 있나요 root
? 명령을 시도하면
chsh -s /bin/true root
내가 얻은 대답은 아마도 쉘을 변경하지 않을 것이라는 것이었고 root
, 물론 편집을 시도했을 때 /etc/passwd
그렇게 nano
할 권한이 없다는 메시지를 받았습니다.
그렇다면 로그인할 수 있는 솔루션은 없을까요 root
?
답변1
어떤 것을 만들어:
ssh root@localhost /bin/bash
쉘 프롬프트가 표시되지 않습니다. 그러나 ls를 입력하고 Enter를 누르면 출력이 표시됩니다. 그런 다음 이 sed 명령을 사용하여 루트 셸을 재설정할 수 있습니다.
/usr/bin/sed -i -e 's|^\(root.*:\)[^:]*$|\1/bin/bash|g' /etc/passwd
배포판에 따라 sed 명령은 /bin/sed 아래에 있을 수 있습니다.
분명히 이것은 필사적인 조치였습니다.
답변2
아마도 가장 쉬운 방법은 설치 미디어의 복구 모드로 부팅하여 /etc/passwd
복구하는 것입니다.
답변3
sudo /bin/bash
일을 해야 합니다. bash
슈퍼유저 권한으로 실행 하게 되므로 편집 /etc/passwd
이나 실행은 chsh
문제가 되지 않습니다.
답변4
sudo가 설치되어 있지 않은 경우 쉽게 설치할 수 있으며 sudo /bin/bash
작동합니다. 모든 Linux 배포판에서는 sudo를 사용할 수 있습니다.
또한 비밀번호 프롬프트가 표시되면 공개 키 인증을 사용한 다음 비밀번호 없는 sudo를 활성화해야 합니다. 이것을 사용하여 구성하십시오.https://spinupwp.com/doc/passwordless-sudo/
이 경우 SSH 공개키 인증을 이용하셔야 합니다^^.