커널 매개변수 init=/bin/bash가 작동하지 않습니까? (RHEL7, RHCSA 테스트)

커널 매개변수 init=/bin/bash가 작동하지 않습니까? (RHEL7, RHCSA 테스트)

저는 몇 주 전에 실험실/실습 시험인 RHCSA 시험을 치렀습니다. 첫 번째 단계는 가상 머신에 대한 루트 액세스 권한을 얻는 것입니다. 일반적으로(내 PC의 VirtualBox CentOS 7 VM에서는 잘 작동함) 커널 매개변수를 추가하여 이 작업을 수행합니다 init=/bin/bash rw. 그러나 이는 테스트된 VM에서는 실제로 작동하지 않았습니다. 커널이 내 비밀번호를 루트로 설정한 후에는 내가 입력한 텍스트가 reset. passwd터미널이 내 키 입력 중 일부를 먹는 것 같기 때문에 비밀번호 변경을 사용하는 것이 불가능하다는 것이 밝혀졌습니다 . 나는 커널 매개변수를 사용해야 했습니다 rd.break. 문제는 왜, 특히 이상한 터미널 동작입니까?

답변1

/etc/shadow이것은 당신이 찾고 있는 대답이 아닐 수도 있지만, 일단 파일이 추가되면 파일에서 비밀번호를 제거할 수 있다는 점만 언급하면 ​​됩니다. init=/bin/sh(역사적 이유로 모든 *nix 환경에 나타날 수 있기 때문에 sh를 선호합니다.) 아마도 심볼릭 링크일 수도 있습니다. 강타하지만 요점을 알 수 있습니다.

셸에 들어가면 항상 드라이브를 다시 마운트 mount -n -o remount,rw /하고 파일로 이동합니다 /etc/shadow. 다음 내용을 읽어야 합니다.

root:123l4kj'0978dsfgasfli132094187234aposdiuf987:14414:0:99999:7:::
.....

암호화된 문자열을 모두 제거하고 다음과 같이 유지하세요.

root::14414:0:99999:7::

그 후에는 가상 머신을 재설정할 수 있으며 다음에 가상 머신을 시작할 때 다음 명령을 사용하여 로그인할 수 있습니다.뿌리그리고비밀번호 없이

추신.여기이것에 대한 튜토리얼입니다

답변2

init=/bin/bash rw

그런데 이 "rw"는 거기서 무엇을 하고 있는 걸까요? bash에 대한 인수로 해석되지 않습니까? 루트를 먼저 설치한 다음 /bin/bash를 시작할 수 있습니다.

관련 정보