Автор статьи — Лохтуров Вячеслав Александрович, преподаватель курсов по UNIX-технологиям, ведущий инженер МГТУ им. Н.Э. Баумана.

Как давно практикующий инженер и преподаватель, переболевший в свое время «религиозными фанатизмами» вроде «зачем нужен Linux, когда есть FreeBSD», попробую дать разумный ответ на этот непростой вопрос.

Начну с того, что не согласен с позицией, утверждающей, что обилие разнообразных дистрибутивов «распыляет» усилия сообщества и надо всем миром навалиться на совершенствование самого «правильного» дистрибутива по имени …, далее следует десяток названий на вкус и цвет авторов. Уникальное многообразие природы на Земле опровергает разумность выбора чего-то единственно верного, и, наоборот, хорошие решения возникают благодаря свободе развития — почитайте историю UNIX, например.

Да, но что же все-таки выбрать? Здесь уместнее всего задать вопрос: как вы планируете использовать Linux?

Начнем с обучения. Если вы студент и хотите узнать о системе все и делать с ней все, что захочется – смело выбирайте Source-based (собираемый из исходных текстов) дистрибутив, например, Gentoo Linux. Не пожалеете — в этой системе даже инсталлятора нет, все нужно делать руками. Вы научитесь не только «компилять» ядро и пакеты, но и «мир пересобирать». Кстати, на этом же этапе очень рекомендую мою любимую FreeBSD. Несмотря на то, что в ней нет Linux-ядра, она сочетает в себе особенности как Source-based, так и Binary-based (устанавливаемые из откомпилированных пакетов) дистрибутивов.

Далее, изучив внутренности Linux вдоль и поперек и поразив на собеседовании работодателя, вы устраиваетесь на предприятие. Самое неразумное, что вы можете начать делать – это везде ставить свою любимую «генту». Попробую аргументировать. Дело в том, что на предприятии нет такой задачи — «компилять» ядро. Может быть задача, для которой потребуется компиляция ядра: например, имеется оборудование, производительности которого недостаточно, и нужно максимально оптимизировать операционную систему под него. Но это не самая типичная задача. Чаще встречаются задачи типа — развернуть почтовый сервис с защитой от вирусов и спама, с веб-интерфейсом, интегрировать его с инфраструктурой Active Directory предприятия и т.д.

В Gentoo даже на то, чтобы установить все необходимые пакеты, потребуется немало времени (все ведь компилируется из исходных текстов), а его инженеру всегда не хватает. Кроме того, не стоит забывать об обновлении систем. Gentoo, использующая модель непрерывных обновлений (Rolling release), может преподнести неожиданный сюрприз: новые версии — новые ошибки. По этой причине на предприятии практичнее использовать Binary-based дистрибутивы с долговременной поддержкой (Long Term Support).

Так какой же выбрать?

Хороший критерий – время, затраченное на развертывание и поддержку сервиса. Правило примерно такое: смотрим, под какие дистрибутивы адаптирован сервис, и выбираем из них с самым долгим временем поддержки. Например, биллинговая система на нашем предприятии готова работать под CentOS (7 лет поддержки), FreeBSD (2 года поддержки) и Ubuntu LTS (5 лет поддержки). Догадайтесь, на чем она работает? А вот сервис IP-телефонии мы развернули на Ubuntu, под которую имеются откомпилированные пакеты Asterisk и CRM.

Но есть и исключения. Например, пограничный почтовый сервер, защищающий основной от спама и вирусов, лучше не разворачивать на LTS-дистрибутиве, так как технологии спама непрерывно развиваются, и для защиты от него лучше использовать более свежее ПО. У нас для этой цели используется ежегодно обновляемый дистрибутив Debian, славящийся огромной базой заранее откомпилированных под него пакетов. Нашлось дело и для FreeBSD — оказалось, что только под нее собран пакет, позволяющий использовать RADIUS-аутентификацию сервису OpenVPN.

«Не стоит увеличивать хаос на предприятии, разводя зоопарк систем», — скажут некоторые и будут совершенно правы. Баланс необходим, и у нас из *NIX систем используются только эти четыре, к тому же Ubuntu – это фактически Debian LTS. С другой стороны, попытки затащить любой сервис, например, в CentOS, собирая его из исходных текстов или устанавливая из «левых» репозиториев, уровень хаоса никак не уменьшают.

На наших курсах в «Специалисте» мы учим жалеть время и клавиатуры и использовать наиболее подходящие дистрибутивы Linux или FreeBSD для решения практических, жизненных задач.

Приходите к нам учиться!