
이메일을 받았을 때 스크립트를 실행하고 싶습니다. 이 줄을 /etc/aliases에 추가했습니다.
myuser: "|/home/myuser/mailer.rb"
myuser@domain으로 이메일을 보내면 메일 로그에 권한 거부 오류가 표시됩니다.
8월 12일 14:17:59 Stag postfix/local[29300]: E5B8F67024F: to=, Relay=local, 지연=1596, 지연=1596/0.01/0/0.02, dsn=4.3.0, 상태=지연(일시적 오류) . 명령 출력: local: fatal: execvp /home/myuser/mailer.rb: 권한이 거부되었습니다.
mailer.rb의 권한은 755입니다. 왜 권한 거부 오류가 발생합니까?
도움을 주시면 감사하겠습니다. 감사해요!
답변1
해당 사용자와 함께 스크립트까지 얻을 수 있습니까? 사용자의 홈 디렉토리를 열 수 없는 것 같아요.
sudo -u postfix /home/myuser/mailer.rb
이것을 확인해 보세요 . 이 문제를 해결하려면 어떤 배포판을 실행하고 있나요?
답변2
SELinux가 활성화되어 있나요? 으로 확인할 수 있습니다 getenforce
. 반환되는 경우집행, SELinux가 켜져 있으면 그런 종류의 문제가 발생할 수 있습니다. SELinux가 필요하지 않은 경우 SELinux를 일시적으로 비활성화 setenforce 0
하고 문제가 해결되는지 확인할 수 있습니다.
그렇다면 파일을 수정하여 SELinux를 영구적으로 비활성화할 수 있습니다./etc/selinux/config.