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

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

내 클라이언트 시스템에 Ubuntu 12.10이 있습니다. 오류가 발생했습니다 /etc/sudoers is owned by uid 1000 should be 0. Ubuntu 라이브 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

이미 라이브 CD의 루트여야 하며 해당 sudo부분을 생략할 수 있습니다. chown root:root /etc/sudoers수정하려면 실행하세요 . 또는 복구 모드로 부팅하여 루트 쉘을 얻으십시오.

답변2

chown나는 당신이 라이브 시스템에서 복사를 한 것 같아요 . 대신 설치된 시스템에서 이 작업을 수행해야 합니다. 경로는 아마도 . 적어도 GUI를 사용하여 드라이브를 마운트하는 경우./media/something/etc/sudoers

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

답변3

다른 답변에서 이미 논의한 것처럼 이 문제가 라이브 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/*

관련 정보