권한이 440으로 설정된 루트는 어떻게 sudoers 파일에 쓸 수 있습니까?

권한이 440으로 설정된 루트는 어떻게 sudoers 파일에 쓸 수 있습니까?

그래서 /etc/sudoers 파일의 권한을 살펴보면 다음과 같습니다.

-r--r----- 1 root root 705 Nov  2 19:57 /etc/sudoers

자, 이것은 쓸 수 없다는 뜻이 아닌가요? 그렇다면 루트 사용자는 어떻게 여기에 쓸 수 있을까요?

답변1

루트 사용자는 모드에 관계없이 항상 모든 파일에 대한 전체 쓰기 액세스 권한을 갖습니다.

아마도 가장 좋은 예는 /etc/shadow모드 000이지만 물론 루트로 수정할 수 있는 입니다.

[root@centos7 ~]# ls -pl /etc/shadow
----------. 1 root root 1353 Oct 26 07:40 /etc/shadow

답변2

의견에 명시된 바와 같이 원래 답변은 다소 불분명했습니다.

파일 소유자는 자신이 소유한 모든 파일의 권한을 언제든지 변경할 수 있습니다(루트는 모든 기존 파일에 대해 이 작업을 수행할 수 있습니다).

일반 사용자인 경우 읽기 전용 파일을 수정하는 방법에 따라 다릅니다.

  • vi로 파일을 열고 변경하세요. -> ":w!"로 변경 사항을 쓸 수 있습니다.
  • #echo "test" >> 읽기 전용 파일을 시도해 보세요. 권한이 거부되었습니다.

루트 사용자라면 원하는 파일을 덮어쓰고 변경할 수 있지만 vi 프로그램은 읽기 전용 권한을 고려하고 확인을 요청합니다.

/etc/sudoers 파일은 항상 임시 파일에서 실제 파일의 내용을 열고 변경 사항을 저장하기 전에 몇 가지 검사를 수행하는 "visudo" 명령으로 변경해야 합니다. 읽기 전용 권한에도 불구하고 루트 사용자로서 변경 사항을 쓸 수 있습니다.

답변3

vi 대신 visudo를 사용해 보세요

sudo visudo

관련 정보