Серверный дистрибутив Linux, где стандартные серверные пакеты настроены меньше всего?
Я сейчас использую сервер Ubuntu (для локальной разработки) и заметил, что некоторые пакеты Ubuntu, такие как apache, имеют свои конфигурационные файлы... гм... разбросаны.
Хотя официальные документы Apache в первую очередь ссылаются на httpd.conf, пакеты Apache для Ubuntu ловко делят этот файл на..um...>20 файлов.
Например, вместо добавления виртуальных хостов в httpd.conf ожидается, что вы создадите файлы в подкаталоге, а затем создадите псевдоним в другом каталоге...m'ok. Думаю, многим это нравится... но я... думаю... это все усложняет. если я хочу, чтобы мой конфиг был отделен - я могу сделать это сам.
Какой дистрибутив Linux-сервера, по вашему мнению, настроил их пакеты наименьшее количество создателей дистрибутива?
4 ответа
Оставайтесь с этим макетом! Это приносит преимущество conf.d
папки. Файлы в этих папках никогда не перезаписываются, в отличие от httpd.conf
! Apache собирает все фрагменты в httpd.conf. Вам не нужно заботиться о порядке директив, потому что это XML-подобный файл конфигурации.
На самом деле не очень удобно иметь все директивы в одном файле. Иногда я даже разделяю эти конфиги на более мелкие, частично редактируемые пользователем файлы.
Загляни в /etc/apache2/conf.d/
, Если вы ищете некоторые директивы и не знаете, какой файл искать, используйте grep: grep -i -r "<IfModule mod_foo*" /etc/apache2/conf.d
,
В принципе, это хорошая идея - никогда не редактировать сам httpd.conf. Даже если вы хотите переопределить существующие объявления, скопируйте их в файл *.conf в каталог conf.d и перезапустите apache после внесения изменений в скопированный файл.
Для серверов, которые требуют высокой степени функциональности настройки (и при наличии достаточного количества времени, они все делают), я предпочитаю использовать свои собственные. Я знаю, что это не совсем отвечает на ваш вопрос, но это вариант, который вы должны рассмотреть. После нескольких лет попыток "плыть по течению" и модифицировать вещи в дополнение к тому, что мне дали официальные пакеты, оказалось, что они взламывают его так же, как и я, но по-другому, и, что более важно, неинтуитивно для меня, Итак, я закончил создавать свои собственные скрипты для сборки, компоновки и установки своего собственного apache с модами, php, mysql и т. Д. Позже я пошел еще дальше и сделал свои собственные пакеты из этих скриптов для простого распространения. В конечном итоге его было гораздо проще поддерживать, потому что, хотя это была странная установка, это была МОЯ странная установка, и я мог исправить / обновить вещи намного быстрее, чем разбираться в десятках conf.d/*. Conf разбросал все над файловой системой. Поначалу это отнимает много времени, но в конечном итоге это прекрасно работает.
Обычно дистрибутивы разбивают конфигурационные файлы, чтобы соответствовать какой-то методологии или философии в дистрибутиве. Вместо того, чтобы apache имел одну конфигурационную схему и exim имел другую, они оба будут относительно похожи, так что если вы знакомы с дистрибутивом, вы будете знать, где искать конфигурации для любого нового пакета, который появится.
Я предлагаю вам выбрать дистрибутив с методологией, которая вам обычно нравится, а затем хорошо ее изучить и научиться играть по ее правилам. В конце концов, это облегчит вашу жизнь.
Документация apache, или любая другая документация по этому вопросу, обычно является общей и обсуждает простейший из возможных сценариев, но в реальности все редко бывает так просто. Разделение конфигов на несколько файлов облегчает управление типичными сценариями реального мира в долгосрочной перспективе.
Подобные изменения являются основной причиной того, что мы не используем ни один из дистрибутивов Debian или Ubuntu. В конечном итоге вы используете Ubuntu Apache, а не Apache.
Я не знаю, какой другой дистрибутив находится ближе к вышестоящим источникам, я знаком с RedHat и CentOS, и эти 2 тоже вносят изменения, хотя и менее драматично.
Вы можете попробовать удалить прилагаемые к дистрибутиву пакеты, которые доставляют вам проблемы, а затем скомпилировать нужное программное обеспечение из исходников в /opt
и его подкаталоги. Затем вы будете управлять конфигурацией в соответствии с вашими предпочтениями (я бы порекомендовал Puppet, но это может быть излишним, если у вас есть только один сервер).