소프트웨어(Etherpad)를 시작하기 위해 다른 사용자로 스크립트를 실행하려고 하는데 루트에서 다음과 같이 작동합니다. su -c "/var/www/etherpad-lite/bin/run.sh" -s /bin/bash etherpad
그러나 다음 오류가 발생합니다.bash: /var/www/etherpad-lite/bin/run.sh: Permission denied
내가 작업하고 있는 다른 프로젝트를 위해 많은 것들을 설치한 후 작동이 멈출 때까지 이것은 잘 작동했습니다. 어느 것도 etherpad에 영향을 미치지 않습니다.
/var/log/auth.log는 다음을 보여줍니다:
Aug 12 19:59:21 bhs1 su[7289]: Successful su for etherpad by root
Aug 12 19:59:21 bhs1 su[7289]: + /dev/pts/1 root:etherpad
Aug 12 19:59:21 bhs1 su[7289]: pam_unix(su:session): session opened for user etherpad by root(uid=0)
Aug 12 19:59:21 bhs1 su[7289]: pam_unix(su:session): session closed for user etherpad
몇 가지 검색을 수행하여 이 문제의 가능한 원인을 몇 가지 찾았지만 내 문제와 관련된 원인은 없습니다.
- 파일은 777(
-rwxrwxrwx
)로 chmodd되어 있으며 etherpad 사용자가 소유하고 있습니다. 700과 유사하기 전에 권한 문제가 아닌지 확인하기 위해 방금 777로 변경했습니다. - 파일 시스템에 noexec가 활성화되어 있지 않습니다.
저는 전용 서버에서 Debian 7.6을 실행하고 있습니다.
답변1
run.sh에 "모든 사람이 읽기" 권한을 부여할 수 있지만 /var/www/에 "루트만 읽기" 권한이 있는 경우 "권한 거부됨" 오류 메시지가 표시됩니다.
경로의 모든 디렉터리에 대한 권한 확인
/var/
/var/www/
/var/www/etherpad-lite/
/var/www/etherpad-lite/bin/