ПОМЕЩЕНИЕ и ЦЕЛЬ
Существует эта тема о Пассажир / mod_rails не может инициализироваться в Fedora 12 при запуске Apache . Суть в том, что проблема связана с разрешением, и вы можете избежать этого, позвонив по номеру
setenforce 0
перед запуском
service httpd start
и звонит
setenforce 1
после этого установить обратно. Это работает круто, но я хочу, чтобы последовательность запускалась автоматически при перезапуске Fedora.
ПРОБЛЕМА
Я посмотрел на /etc/init.d/httpd
и обнаружил, что он просто перенаправляет на etc/rc.d/init.d/functions
, и вызов по клавише
systemctl_redirect $0 $1
Итак, я подумал, что просто окружить этот вызов setenforce
вызовами, как это будет работать.
setenforce 0
systemctl_redirect $0 $1
setenforce 1
Но это не работает. Выдает новую ошибку, как это (в журнале ошибок httpd):
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
, тогда он наконец работает! Но, очевидно, я хочу вернуть его куда-нибудь.
ВОПРОС
Как я могу подключить эти setenforce 0
и setenforce 1
вызовы к последовательности загрузки httpd
? Я чувствую, что наиболее правильным способом было бы написать собственный сценарий /etc/init.d/httpd
, который не использует systemctl
, но я хочу этого избежать, поскольку он выглядит как тернистый путь ... Но если я ошибаюсь, и если могу предложить простой способ написания собственного etc/init.d/httpd
сценария, я бы тоже оценил.