Во-первых, нарушение пространства поставщика (здесь каталог / usr / bin
) - довольно плохая идея, поскольку пакеты других поставщиков могут зависят от make
4.1, либо обновления поставщика для make
могут конфликтовать или не работать из-за ручных изменений, внесенных в пространство поставщика, или, возможно, отменить ваши изменения. Лучшим вариантом является установка вашей версии make
в другом месте, например, в / usr / local / bin
, хотя в системах * BSD эта область используется пакетами, поэтому проверьте документацию о том, что должно происходить, а затем выберите другое место при создании собственного хранилища программного обеспечения, например / opt
или любое другое выдуманное имя, подходящее для вашей среды. Конечно, это означает, что вы несете ответственность за обновления (в частности, обновления безопасности) для программного обеспечения в этом хранилище программного обеспечения, недостаток, который может варьироваться от незначительного до ужасного, в зависимости от программного обеспечения и сайта.
Что касается этапа компиляции, он будет работать (с пользовательским путем к хранилищу программного обеспечения / usr / local
) в следующих строках:
tar xjf make-3.81.tar.bz2
cd make-3.81
./configure --prefix=/usr/local && make && make install
Любое приложение, которому затем потребуется старая версия ] make
потребуется установить для переменной среды PATH
список / usr / local / bin
перед / usr / bin
(или сейчас на некоторых Linux, а также каталоги / bin
).
env PATH=/usr/local/bin:$PATH yoursoftwarethatneedsmake3.81 ...
Или вручную в оболочке rc или веб-сервере, или еще в какой-то конфигурации.Это может быть проблематично, если приложению требуется старая версия make
, но требуется что-то еще из / usr / bin
, которое замаскировано другим программным обеспечением в / usr / local / bin
; чтобы избежать этого, make
можно установить в каталог с поддержкой версий:
./configure --prefix=/opt/`uname -m`/make-3.81
И тогда приложениям потребуется (при условии amd64 в Linux) /opt/x86_64/make-3.81/bin
в списке сначала в их PATH
. Или, если вы используете только одну архитектуру, вы можете упростить путь до /opt/make-3.81
или пойти более сложным с /opt/centos7/x86_64/make-3.81
, чтобы поддерживать несколько операционных систем в одном дереве.Поскольку дополнительное программное обеспечение устанавливается таким образом, что-то вроде Stow может помочь в управлении такими версиями установки без чрезмерно длинного PATH
. При достаточной осторожности, внимании и ресурсах хранилище программного обеспечения, построенное в этом направлении, может развиться в нечто вроде Apollo , хотя идеальная форма хранилища программного обеспечения (если таковая имеется!) Для конкретного сайта будет варьироваться в зависимости от размер сайта, количество стороннего программного обеспечения, которое необходимо установить, и т. д.
Оказалось, что для конфигурационного файла shibboleth были установлены неправильные права доступа, что привело к неработоспособности модуля mod_shib, в результате чего журналы не создавались.
Вы писали:
The logs do not show anything (although I have set the LogLevel to debug)
Убедитесь, что вы не переопределили его позже где-то еще в конфигурации.
Если он не показывает никаких логов, попробуйте выяснить, почему он вообще не может писать логи, используя что-то вроде:
sudo strace -f /path/to/httpd_start_script 2>&1 | less -i