저는 최근에 폴더에 대한 일부 권한을 설정하는 Symfony 3 사이트를 구성했습니다 /var
. 나는 다음을 수행해야했습니다 :
$ HTTPDUSER=`ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1`
$ sudo setfacl -R -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX var
$ sudo setfacl -dR -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX var
이로 인해 필요한 권한이 추가되었지만 이제 명령을 사용할 때마다 다음 메시지가 나타납니다 sudo
.
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
[sudo] password for user:
이는 일반적으로 사용자가 를 처음 사용할 때만 전송됩니다 sudo
. 또한 예전에는 비밀번호를 한 번만 입력하면 sudo
시간이 지나면 만료됩니다(그러면 다시 입력해야 했습니다). 이제 매번 메시지와 비밀번호 프롬프트가 모두 표시됩니다.
이 문제를 해결할 수 있는 방법이 있나요?
답변1
누군가 이것이 궁금할 경우를 대비해 제가 이 문제를 해결하기 위해 한 일이 있습니다.
고치다:
sudo setfacl -R -b
이는 재귀적으로(-R) 모든(-b) acl 권한을 제거합니다.
또한 다음 파일에 대한 그룹 쓰기 경고가 표시되었습니다.
/var/lib/sudo/lectured
/var/lib/sudo/ts
고치다:
sudo chmod 700
두 파일 모두에 대해 권한을 수정하고 경고를 수정했습니다.
답변2
만약 당신이 입력
sudo -s
터미널에서 이후의 모든 명령은 다음과 같이 실행되지만 sudo
필요하지 않은 경우 해당 모드를 유지하지 않는 것이 좋습니다.