IT 대장간
리눅스 ROOT계정 패스워드 분실&재설정 본문
*무언가에 꽂혀서 급히 VM을 만들어놓고 한참 뒤에 무언가 테스트를 하겠다고 접속해보면 ROOT 계정의 패스워드가 생각나지 않는 경우가 많음


*패스워드 재설정
1) OS 시작 시 [END] 키를 눌러 고급 옵션 기능 선택
- Advanced option 선택

2) [E] 키를 눌러 편집모드 진입 후 아래와 같이 편집
- 아마 나와 같이 명령어 라인이 구성 안되어 있을 수 있다. 이는 설치된 OS에서 하위 버전에 대한 지원, 이전 부팅 이력 등등에 의해 조금 씩 차이가 있지만!
*부팅 버전 체크 후 해당 라인에 우리가 필요한 명령어를 넣어주면 된다
- Read Only[ro] -> Read Write [rw] 권한 변경 & bash 쉘로 부팅 전 작업할 수 있도록 수정


3)설정이 완료되면 - [Ctrl] + [x] 또는 F10으로 탈출 및 부팅 후 부팅 버전 선택
- 조금 전 수정한 부팅 버전 영역 -> 6.0 (참고로 본인 설정 시 아래 목록에 나와있듯 5.18 버전 부팅 시 실행 라인도 있음)
- CentOS는 최초 설치 버전만 지원하기에 아래 버전 선택 과정 없이 바로 부팅 됨.

4) CLI로 root 권한의 bash 쉘 OPEN
- passwd [패스워드 변경]
- touch /.autorelabel [재 레이블링]
- exec /sbin/init [부팅]

ⓛ touch /.autorelabel 입력
- .autorelabel 파일은 SELinux 재레이블링을 트리거하는 데 사용되는 마커 파일
- touch 명령어를 사용하여 .autorelabel 파일을 생성 시 시스템이 다음 부팅 때 SELinux 정책을 재레이블링하도록 설정
* 해당 명령어를 통해 /.autorelabel 파일을 생성하면 파일에 대한 레이블을 자동으로 부여하고 해당 파일은 삭제된다.
* 보안 컨텍스트(Security Context): 리눅스 시스템에서는 SELinux 또는 AppArmor과 같은 보안 컨텍스트를 사용하여 프로세스, 파일, 디렉토리 등에 레이블을 할당하는데 이 보안 컨텍스트는 접근 권한을 결정하는 데 사용
② exec /sbin/init 를 통해 부팅
- reboot이나 init6 같은 경우 init 시스템 부팅이 정상적으로 이루어지지 않은 상태 이므로 명령어 수행 불가
5) 변경 된 패스워드로 정상부팅

[번외] ROOT권한의 BASH쉘로 CLI모드 진입 시 발생 할 수 있는 오류
※ 패스워드 변경 시도 중 Authentication token manipulation error 발생 시,
$ mount -o remount,rw /
$ chmod 640 /etc/shadow
$ passwd
'Linux' 카테고리의 다른 글
| [CentOS 7] GUI 설치하기 (1) | 2021.03.15 |
|---|---|
| [CentOS7] Minimal 설치 시 네트워크 연결 (2) | 2021.03.02 |
| R-Command 사용법 (R-명령어) (1) | 2020.10.19 |
| 유용한 리눅스 명령어 및 서비스 (Update 2020.10.19) (0) | 2020.09.21 |
| 칼리리눅스 한글화 패치 (0) | 2020.09.01 |