2012-01-11 3 views
4

PREMISE 및 목적부팅 아파치 페도라

이 스레드에 대한 Passenger/mod_rails fails to initialize in Fedora 12 when starting Apache이 있습니다를 시작 성공적으로. 결론은,이 문제로 인해 권한에, 당신은

service httpd start 

을 실행하고 다시 설정하는 데 그 이후

setenforce 1 

를 호출하기 전에

setenforce 0 

를 호출하여이 문제를 피할 수 있습니다. 멋지게 작동하지만 Fedora가 다시 시작될 때 시퀀스가 ​​자동으로 실행되기를 원합니다.



문제

나는 /etc/init.d/httpd로 보면서 나는 단순히 setenforce 호출이 호출을 둘러싼 생각 그냥 etc/rc.d/init.d/functions로 리디렉션 및 키 호출 그래서

systemctl_redirect $0 $1 

입니다 발견 이렇게하면 효과가 있습니다.

setenforce 0 
systemctl_redirect $0 $1 
setenforce 1 

하지만 작동하지 않습니다. 그것은 (아파치 오류 로그)이 같은 새로운 오류를 방출 :

Cannot change the directory '/tmp/passenger.1.0.8581/generation-0/buffered_uploads' its UID to 48 and GID to 48: Operation not permitted (1) 

내가 마지막 setenforce 1를 생략, 다음 마지막 작품! 그러나 분명히 나는 ​​그것을 어딘가에 되돌리고 싶다.

어떻게 httpd의 부팅 순서 이러한 setenforce 0setenforce 1 전화를 연결할 수 있습니다



질문? 나는 가장 적절한 방법이 을 사용하지 않는 내 /etc/init.d/httpd 스크립트를 작성하는 것이지만 나는 그것이 가시 경로처럼 보이기 때문에 피하기를 원한다고 생각합니다. 그러나 만약 내가 잘못되어 있고 쉬운 길을 제안 할 수 있다면 내 자신의 etc/init.d/httpd 스크립트를 작성하는 것 또한 저도 감사 할 것입니다.

답변

0

문제에 대해 잘못된 접근 방식을 사용하고 있습니다. 으로 시스템에서 SELinux를 비활성화하지 않아야합니다. 필요한 작업은 SELinux 문제 해결사를 사용하여 문제를 파악하고 원하는 작업을 허용하는 규칙을 추가하는 것입니다. 일반적으로 명령은 실행해야하는 명령을 제공합니다.

먼저 사용 가능한 최신 버전을 사용하고 있는지 확인한 다음 문제가 지속되면 here 버그 보고서를 작성하십시오. 개발자의 도움을 받으십시오.

+1

현재 Phusion Passenger에 대한 SELinux 프로필이 없습니다. 우리 (저자)는 SELinux에 대해 잘 이해하지 못했고 우리가 찾을 수있는 작은 문서는별로 도움이되지 않습니다. 만약 누군가가 좋은 SELinux 프로필에 기여할 수 있다면 그것을 유지할 의향이 있으면 좋을 것입니다. 그때까지는 SELinux를 완전히 비활성화하는 것이 유감스럽게도 일을 처리하는 가장 쉬운 방법입니다. – Hongli