nginx는 루트 권한으로 스크립트를 실행합니다.

nginx는 루트 권한으로 스크립트를 실행합니다.

/var/log나는 충돌 보고서(일부 로그 와 일부 파일 ) 를 수집하는 작은 bash 스크립트를 작성했으며 /etc그것이 작동하기를 원하는 방식은 NGINX CGI를 통해 이루어졌습니다.

링크를 사용하여 NGINX는 이러한 모든 파일을 수집하고 완료되면 다운로드를 시작하는 스크립트를 트리거합니다.

내 문제는 이제 권한입니다. 파일의 일부만 수집할 수 있지만 전부는 수집할 수 없습니다(dmesg, syslog 등).

답변1

배포에 따라 로그인에는 /var/log그룹에 대한 그룹 읽기 권한이 설정되어 있을 수 있습니다 adm.

nginx가 실행 중인 사용자를 adm그룹에 추가하여 CGI 스크립트가 이러한 파일을 읽을 수 있도록 할 수 있습니다. 이렇게 하면 스크립트에 이러한 로그를 읽는 데 전체 루트 권한이 필요하지 않습니다.

관련 정보