오류: /etc/sudoers가 작동하지 않음 - 소유권 오류

오류: /etc/sudoers가 작동하지 않음 - 소유권 오류

내 클라이언트 시스템에 Ubuntu 12.10이 있습니다. 오류가 발생했습니다 /etc/sudoers is owned by uid 1000 should be 0. Ubuntu Live CD에서 부팅을 시도하고 다음을 시도했습니다.

sudo chown root:root /etc/sudoers

sudo chmod 440 /etc/sudoers 

그리고

sudo chown 0.0 /etc/

하지만 작동하지 않습니다. 계속해서 오류를 보고하세요.

sudo : /etc/sudoers is owned by uid 1000 should be 0.

이 문제를 어떻게 해결할 수 있나요?

답변1

이미 Live CD의 루트 사용자여야 하며 이 sudo섹션을 생략할 수 있습니다. 수리를 실행하십시오 chown root:root /etc/sudoers. 또는 복구를 시작하여 루트 쉘을 얻으십시오.

답변2

나는 당신이 chown라이브 시스템에서 복제하고 있다고 생각합니다. 이미 설치된 시스템에서 이 작업을 수행해야 합니다. GUI를 사용하여 드라이브를 마운트하는 경우 경로는 아마도 ./media/something/etc/sudoers

또는 시스템을 복구 모드로 부팅할 수 있습니다(GRUB 프롬프트의 옵션이어야 함). 그러면 루트 셸이 제공되어 chown root:root /etc/sudoers.

답변3

다른 답변에서 이미 논의한 것처럼 문제가 Live CD 실행과 관련된 미묘한 문제가 아닌 경우 루트 계정에 문제가 있을 수 있습니다.

/etc/passwd에서 루트 항목을 확인하십시오. 세 번째와 네 번째 필드(콜론으로 구분)는 모두 다음과 같이 0이어야 합니다.

root:x:0:0:root:/root:/bin/bash

루트가 UID 1000을 획득했다면 소유권이 1000으로 설정된 이유가 이해가 됩니다 chown root:root /etc/sudoers. 그러면 문제는 루트 계정을 UID 0으로 변경하는 것이며 루트 계정이 변경된 이유를 확인하는 것이 더 어려운 문제입니다.

답변4

먼저 다음 명령을 실행하십시오.

$ su -root

비밀번호를 묻고 다음 명령을 하나씩 실행합니다.

chown root:root /etc/sudoers 
chmod 440 /etc/sudoers
chown -R root:root /etc/sudoers.d
chmod  755 /etc/sudoers.d 
chmod  440 /etc/sudoers.d/*

관련 정보