임시 로그 파일(예: )을 생성하는 Unix 스크립트가 있습니다 tempfl.log
. 이 파일이 생성되면 권한이 부여됩니다 rw-r--r--
.
줄이 있어요
chmod 0440 /etc/sudoers tempfl.log 2>&1
그러나 스크립트가 완료되면 권한이 r--r--r--
원래대로 변경됩니다 rw-r--r--
. 내가 그 줄을 다음과 같이 바꾸면
chmod 0644 /etc/sudoers tempfl.log
권한은 올바르지 tempfl.log
만 오류가 발생합니다.
sudo: /usr/local/etc/sudoers 모드는 0644이며 0440이어야 합니다.
나는 sudoers가 무엇을 하고 있는지, 무엇이 잘못되었는지 이해하지 못합니다.
답변1
당신의 스크립트가하고 있습니다정확히무엇을 해야 할지 알려줍니다:
chmod 0440 /etc/sudoers tempfl.log
r--r-----
두 파일 모두에 적용됩니다 .
관리 스크립트를 작성하는 경우가 아니라면 이 파일을 조작해서는 안 되며 sudoers
, 그런 경우에도 시스템을 보호하는 데 도움이 되므로 권한을 유지해야 합니다. 프로그램 sudo
자체는 구성 파일의 권한을 확인하고 (보시다시피) 경고합니다. 이거 들어 봐. 분명히 당신보다 더 잘 알고 있습니다 :-)
sudo
다음과 같이 스크립트의 일부를 실행하려고 하는 것이 아닌가요 ?
sudo chmod 0440 tempfl.log 2>&1
그렇지 않고 두 파일을 모두 수정하려면(다른 권한을 사용하여) 두 개의 개별 명령을 사용하십시오.
chmod 0440 /etc/sudoers 2>&1
chmod 0644 tempfl.log 2>&1
답변2
스크립트가 /etc/sudoers 및 tempfl.log 파일 2개에 대한 권한을 변경하고 있습니다. 명령을 두 줄로 나누면 문제가 없습니다.
답변3
작성하면 chmod 0440 /etc/sudoers tempfl.log
및의 권한이 0440으로 변경되는데 이는 잘못된 것입니다./etc/sudoers
tempfl.log
쓸 때 chmod 0644 /etc/sudoers tempfl.log
및 의 권한이 0644로 변경되는데 이는 잘못된 것입니다./etc/sudoers
tempfl.log
권한을 변경해야 합니까 /etc/sudoers
? 정말로 글을 쓰고 싶나요 chmod 0644 tempfl.log
?