Почему Gentoo не стоит использовать на сервере.

()

Весь последний год я использовал на сервере Gentoo Linux. Так как на многих серверах сейчас используется FreeBSD, мне стало интересно, какую скорость я могу получить на старом железе, используя Gentoo. Gentoo это дистрибутив, который позволяет легко скомпилировать программы с огромным количеством флагов компилятора, которые отвечают за любую часть железа. Теоретически такая оптимизация должна сильно ускорить систему.

Однако опыт показал, что не все так хорошо. Есть вещи которые мне очень нравятся в Gentoo: менеджмент пакетов, использование USE флагов и проработанная система зависимостей. Но к сожалению возникли большие трудности при настройке сервера.

Хорошие стороны.

Эта система лучше, чем большинство Linux систем в области менеджмента пакетов и установки. Команда emerge правосходна. С её помощью очень просто установить или обновить программу со всеми необходимыми зависимостями. ПРодуманная система USE флагов дополняет эту систему. Вместо того, чтобы указывать флаги каждой компилируемой программы, можно установить глобальный флаг USE. Большинство пакетов использует его и система установится правильно.

Наиболее простой способ способ описать эти преимущества - это сравнить с процессом установки FreeBSD на сервер. Примем, что у нас нет X11 и он нам не нужен. Теперь нам надо установить PHP и включить поддержку графических операций (преобразование изображений, генерация CAPTHA и т.д.). Для этого вы ищите make флаги и добавляете их в make.conf. Затем вы набираете "make install". Во время процесса компиляции система портов увидит зависимость от графических библиотек. Графические библоитеки требуют шрифты. Шрифты требуют менеджера шрифтов. Менеджер шрифтов по умолчанию сконфигурирован для X11. Таким образом мы обнаруживаем, что X11 необходим для выполнения зависимостей и приходится нажимать Ctrl-C для отмены установки.

С другой стороны, в Gentoo просто необходимо добавить "-X" в USE флаги и всё будет замечательно. Это отличная система.

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

Неудобство, выраженное во времени.

Все эти вещи показывают, что Gentoo приятно использовать. И я с удовольствием буду использовать её на своем десктопе, когда Apple OS X разочарует меня. Но я не буду устанавилвать Gentoo на сервер. Вот почему:

  1. Gentoo требует много времени для установки

    По крайней мере когда я устанавливал Gentoo, не было нормального инсталлятора. Документация превосходная и в ней точно описано всё, что нужно сделать, но это занимает много времени. Фактически, чтобы поднять систему я потратил несколько часов. И это было только начало.

  2. Gentoo требует очень много времени для установки

    Достоинство Gentoo заключается в "умной" компиляции всего - по крайней мере так принято считать. Но к сожалению на моем низкопроизводительном тестовом сервере, компиляция даже базовой системы с Apache, MySQL, Python и некоторыми другими важными программами заняла около трех дней. Причем всё это время машина непрерывно компилировала систему.

    Я понимаю, что последние рекомендации на советуют делать делать установку из первой стадии ("stage-1"). И я бы последовал этим рекомендациям. Но что тогда будет с преимуществом компиляции всего?

  3. Стратегия стабильности Gentoo: обновление всего

    После того как вы потратили много времени на компиляцию программ, вам скорее всего не захочется делать это часто. К сожалению, Gentoo вынуждает обновлять программы просто ради обновления программ.

    Не существует "стабильной" версии Gentoo. Gentoo постоянно обновляется, таким образом у вас всегда будут самые свежие версии программ. Как написано в руководстве Gentoo (Gentoo handbook):

    Изначально Gentoo проектировалась исходя из концепции быстрого, дополняющегося обновления. 
    

    Если ваша основная забота - поодерживать сервер в рабочем состоянии, то вам необходимо поставить стабильную систему, настроить её и забыть о ней. Иногда надо будет лишь устанавливать необходимые обновления безопасности. С Gentoo у вас такого не получится, так как не существует "стабильного" релиза Gentoo.

    Что гораздо хуже, есть нечто вроде "системного обновления". Это называется новый "профиль". В документации Gentoo рекомендуется обновлять профиль. Это обновление заменит базовую систему. Если вы системный администратор - вам придется настраивать всё заново.

    Обновление профиля коснется огромного количества конфигурационных файлов и может даже затронуть процесс загрузки. Это явно не то, что вы хотите делать на сервере. Так как будет тяжело убедиться, что все работает как должно, и не перестанет работать после перезагрузки. Фактически это то, что произошло со мной, несмотря на большое количество времени, потраченное на обновление файлов в /etc. Конечный результат: сервер пришлось оживлять вручную, что привело к вынужденному простою.

    Для более важных серверов, чем моя тестовая система, вы захотите просто вернуть систему со старым профилем. Для этого просто установите Gentoo на другой машине. Затем убедитесь, что она хорошо работает после перезагрузки. После того, как вы убедились, что всё работает, вы можете переключаться на новую систему.

  4. Стратегия безопасности Gentoo: обновление всего

    Как вы возможно знаете, FreeBSD имеет маленькую приятную программу, которая называется portaudit. Эта утилита предупредит вас, если вы установите программу с известными "дырами" в безопасности. После этого вы можете просто обновить эту программу с помощью команды "portupgrade". С этим процессом редко случаются проблемы.

    Теперь Gentoo. Здесь тоже есть что-то вроде portupgrade. Но здесь нет portaudit.

    По правде говоря, в Gentoo есть экспериментальная команда "glsa-check". Эта команда автоматически проверит известные уязвимости вашей системы. Она также скажет, что надо сделать, чтобы исправить проблемы безопасности. Мне нравится эта разработка, но я понимаю, что эта команда еще не до конца готова. Справочник Gentoo содержит множество предупреждений о том, что эта утилита находится в стадии разработки.

    А между тем, Gentoo вынуждает обновлять всю систему. И конечно обновления могут вызвать разрушение системы.

Gentoo занимает слишком много времени и слишком рискована для серверов.

Я считаю, что обновлять программы сервера нужно только тогда, когда это необходимо. Если вам не нужны новые возможности и всё прекрасно работает, то зачем что-либо менять? Если вы что-то обновляете, вам несомненно придется обновлять конфигурационные файлы. Вам также придется исправлять не работающие вещи в процессе обновления. Это то, что я делал с Gentoo во время тестового года. Я абсолютно не представляю что я обновлял выполняя команду "emerge world". И я до сих пор не понимаю что произошло однажды. Я потратил сного времени обновляя файлы в /etc, используя встроенную команду "tc-update". Я пытался читать лог-файл и предпринимать соответствующие действия. Но все равно ничего не работало.

Самый лучший способ сохранить систему стабильной - это настроить её и ничего не менять. Это тяжело сделать с Gentoo. Gentoo хочет изменить множество вещей. Хочет постояно быть на острие развития.

И отсюда мое заключение. С Gentoo весело играть, но она занимает очень много времени. Я думаю это плата за то, чтобы всегда быть на переднем крае. Для домашних систем Gentoo отлично подходит. С ней приятно работать, у нее есть отличная система портов, используются удобные USE флаги.

Но для серверов, особенно для производительных серверов, Gentoo не эффективна. Необходимо большое количество времени для обновления безопасности и возможной переустановки системы. В 2006 году для Gentoo было 3 обновления профиля. Я не хочу переустанавливать сервер 3 раза в год!

В заключение я хочу процитировать то, что в последнее время сообщала мне Gentoo:

Доступно обновление дерева портов.
Настоятельно рекомендуется обновить дерево портов сейчас, до обновления других пакетов.
Пожалуйста выполните "emerge portage"
и затем обновите все конфигурационные файлы. 

Источник

Ключевые слова: gentoo.

Комментарии:

Killy 2007-01-22 22:43:56 (#)

OMG!

Кто же напишет статью "Почему нельзя подпускать к серверу идиотов?"

Ну кто мешает поднять сервер на тестовой тачанке и наделать там бинарных пакетов? Ну кто заставляет перевобирать систему, если она и так работает?

И не "дерево портов" а пакет "portage".

И вообще, чел походу не понимает о чем он пишет.

Генту идеально подходит для сервера и рабочей станции ибо обновить ее очень легко. И конфиги править не надо - etc-update + dispatch-conf решат все проблемы. Ну еще надо хендбук прочитать конечно же.

MooSE 2007-01-23 05:31:18 (#)

Killy, ты не совсем прав. Иногда возникает необходимость обновить систему/поставить дополнительное ПО. Вот тогда что-то может сломаться и придётся долго и нудно юзать revdep-rebuild и т.д.

Я весной на фряхе а такие грабли наступил. На хостингововм сервере стоял апач 1.3. Он перестал справляться с нагрузкой. Я поставил 2.0. Но сам процесс обновления апача и пересборки пхп на работющем хостинге... Вобщем больше я так не хочу:)

LilFox 2007-01-23 10:05:00 (#)

Прошу прощения за грубость, я проще скажу - gentoo не для идиотов :). Да и Linux/Unix тоже.. На всю статью реально ни одного довода против, серьезного довода против использования gentoo на сервере.

/me сначало написало комент, затем прочитало остальные
Killy ^_^

MooSE, я бы выбрал gentoo, не потому что мне он нравится - я просто с ним справится могу, вот и все. Как уже Killy отметил - "Почему нельзя подпускать к серверу идиотов?", нужно действительно написать...

MooSE 2007-01-23 11:21:29 (#)

LilFox: я могу справитсья с любым юниксом. Только дайте мне три дня на изучение, и один день на усвоение:)

Вчера первый раз в жизни ставил соляру. Причём на спарк. Ничего. Сегодня уже сдал сервер руководству:)

А вообще реально либо ты рулишь никсами либо нет. Руления каким-то одним никсом не бывает. Знаю по себе.

Меня тоже поначалу добивали различные модификации красной шапки. Потом разлитчне версии фряхи. Щас уже настолько пофиг:)

MooSE 2007-02-04 13:33:40 (#)

Что это за хрень такая??? Не существует стабильного дженту???? Чушь какая то. Если не хочешь обновляться, не обновляйся, тебя никто не заставляет этого делать. Существует стабильные пакеты, которые ты раз можешь поставить, забыть на долго, потом сделать emerge --sync и обновить то, что нужно ТЕБЕ.
Короче какая то лобудовая статья.

Barmoley 2007-04-19 16:12:05 (#)

Глупость автора статьи возмутила и поразила на столько, что пришлось зарегится на сайте и высказать свое ФЕ. Я полностью согласен с Killy и LilFox, и мои довода ЗА GENTOO - 5 серверов поднятые за последнии 3 года на Gentoo. Два из них сейчас Primary и Sec домен контролеры обслуживающие 73 рабочих станций в NT домене с перемещаемыми профилями пользователей, Web сервер на 43 виртуальных хоста. Сбоев небыло не разу, обновляю только то что считаю необходимым из предварительно собранных бинарных пакетов. А в отличии от большинства бинарных дистров, Gentoo дает такую гибкость в настройке что можно только позавидовать.
Я вообще не понимаю зачем писать подобные статьи? Возможно это просто личная неприязнь автора к данному дистрибутиву?
А вообще как гласит народная мудрость: "Плохому танцору, яйца мешают!!!"

koskh 2007-06-28 09:22:54 (#)

НАпишите статью "про идиотов". Это точно.
А то всякие "железячники" начитаются таких доводов против, и делают удивленные глаза " у вас Дженту? вы что, это нестабильный дистрибутив, вот дебиан (к примеру) там дааааа...."
Ну и как с ними вести беседу, блин. А вообще, позабавила статейка, она явно заказана поклонниками... ну я не знаю... Убунту, например... а не... Соляриса...нет? черт... не угодал.

Этакий "черный пиар, на наше светлое чуйство"... =)

MooSE 2007-07-29 02:39:44 (#)

Тоже специально зарегался на сервере из-за этой статьи :)

Почему не стоит ставить Генту на сервер? Действительно, потому что занимает много времени. Других причин нет. Но если вы являетесь ярым поклонником Генты и у вас есть на это время, то ставьте на здоровье, она будет работать долго, а вы будете спокойны за свой сервер (а может и не будете).

Имхо, вопрос что ставить на сервер должен зависить от круга решаемых сервером задач и от знаний/умений админа... ВСЁ! Больше нам ничего не надо. Не замерял, но имхо дебиан будет работать не _особо_ тормознее генты, даже если сравнивать его на "бомжовом" варианте компа типа P-III 800MHz.

Вообще, один раз мне пришлось ставить генту на сервер (сам я поклонник FreeBSD), подкупила она малым размером дистра и добротным хендбуком. Поскольку опыта не было, провозился с задачей установки шлюза, прокси и самбы (всего-то!) до 4-х утра и проклял всё на свете. Зато работает по сей день как часы и ни одного сбоя (аптайм около полугода) не было.
Думаю, с этой задачей на фряхе справился бы минут за 30-40 полностью. И по надежности, и по скорости вряд ли чем-то проиграл бы.
Я тоже склоняюсь к мнению, что генту отличный учебный дистрибутив для поклонников "чистого" Линукса.
И использование его на десктопе (особенно не очень мощном) более чем оправдано и, пожалуй, даже нет достойных конкурентов в этом сегменте. Да и на сервере использовать можно, как и любой другой линукс/юникс, только зачем, если есть более удобные, но такие же быстрые и весьма надежные СЕРВЕРНЫЕ операционки?

P.S.: Я считаю, что автор прав. Высказал свое мнение, пусть не в угоду всем, зато свое, и, как бы кто ни орал, весьма аргументировано. Вообщем, я согласен, Gentoo - не удобен, хотя возможен для сервера.

MooSE 2007-09-05 14:27:37 (#)

Как вариант аргумента: есть LSB. Gentoo с LSB не совместим.

MighTEasE 2008-09-21 16:43:55 (#)

Решил зарегистрироваться и отписаться по поводу статьи. Я, конечно, понимаю, у Генты есть минусы, но обвинять ее в нестабильности и медленном обновлении - идиотизм. Собирать 3 дня Генту можно только при двух условиях: первое - сборка иксов, и второе - интернет через модемное соединение. Только вчера ставил гентовый сервер, простенький правда (днс-дхцп) на первый пень. Если не считать времени скачки файлов, система собралась за 2 часа с настройкой. Чтоб не зависеть от скорости инета, хватит винчестера на 90 гигов, кто не может себе этого позволить с одной из зарплат - можете кинуть в меня камнем. И это много??? А скорость инета выросла на 30%.

calculator 2009-01-13 02:45:27 (#)

Человек употребивший слово оптимизация, но использующий древнее железо(со сборкой на нем же) для установки source-based дистрибутива конечно же заслуживает серьезного обсуждения... Жалко только что у него уже сложилось свое негативное впечатление...

Anonymous 2009-07-23 20:50:37 (#)

Идиоты Gentoo-шники придумали интересную мысль, якобы Gentoo собирается ручками, все контролируется и т.д и т.п. Херь полная. Наберут emerge и тупо смотрят, как система самостоятельно без них собирается из исходников написанными не ими!!!!! А понты гнут!!! Вот тупизм редкостный. Что интересно 95% собирает ядро автоматом! Практически получая то говно, коим и является любой бинарный дистриб Линукса

Anonymous 2009-11-15 15:39:36 (#)

Лень было регистрироваться, но выскажусь, у меня прямо сейчас собираеться Дженту на моем компе, он-же у меня тестовый сервер, ядро собиралось вручную (make menuconfig и т.д. по списку) почти перед каждой командой emerge стоят определенные флаги USE. на данный момент у меня ставиться ядрышко vanilla-sources я создаю поддержку русского в консоли, ставлю xorg-x11 nvidia-drivers nvidia-settings xfce4 при этом я сижу с ливсиди убунты, разговариваю по жабе, слушаю музыку и ползаю по инету.Автор - кретин.
Дженту стабильна, просто если не хочешь - то не обновляйся

MooSE 2009-11-16 00:29:24 (#)

Цитата:

Дженту на моем компе, он-же у меня тестовый сервер


Сорри за грубость, но админам локалхостов я бы посоветовал молчать в тряпочку, не дышать и не пердеть пускать газы.

Когда в продакшене что-нибудь на генте будете поддерживать - тогда и поговорим. Точнее когда вас вообще до прадакшена кто-нибудь пустит.

Пионеры блин...

Anonymous 2009-11-16 16:17:12 (#)

>на данный момент у меня ставиться ядрышко vanilla-sources я создаю поддержку русского в консоли
А в генте еще и русский надо ручками настраивать? оО

Alex 2009-11-16 17:24:42 (#)

А Gentoo таки рулит, да :-P

MooSE 2009-11-16 17:30:05 (#)

Цитата:

А Gentoo таки рулит, да :-P


Сказал ещё один админ локалхоста, да, саня?

Alex 2009-11-16 17:31:31 (#)

Да, Вадим, ибо одно другому не мешает :-)

Anonymous 2010-03-15 16:17:04 (#)

Аффтор прав! Ответ на этот вопрос даже короче: Потому, что BSD - несет дух свободы выношенный поколением людей, идея которых отличалась от студенческого проекта. Linux is for lmaoz! На боевой сервер ставить его рука не поднимается, на декстоп темболее.

Anonymous 2010-05-13 19:05:46 (#)

Atur
Решил сегодня попробовать установить Gentoo.
Потратил уже 4 часа и это еще не предел, комп, правда, слабоват, проц при компиляции ядра зашкаливал.

В общем пришел к выводу, что нужна какая-то серьезная причина, чтобы ставить Gentoo, а не другой дистрибутив.

Anonymous 2011-06-28 17:14:41 (#)

Привет из бывшего Комстара , Gentoo рулит :)

Anonymous 2011-10-11 17:05:08 (#)

У меня стоит Debian на сервере, работает себе не кашляет и фиг с ним - максимально быстрая установка и беспроблемная работа, т.к. от него нужно всего по минимому. И на рабочей станции Gentoo, ну как то не смог я иначе никак поставить ничего, что бы и то и се установить-удалить и чтобы потом все не рухнуло из-за проблем с зависимостями и т.п.

Anonymous 2011-12-27 11:31:30 (#)

если бы автор статьи прочитал внимательнее о gentoo profile, то наверняка обратил бы внимание, что hardened создан именно для продакш-серверов и тогда не пришлось бы писать такие статьи. Более того в генте как и в других дистрибутивах есть две ветки stable и testing, соответственно и стабильность работы системы от этого зависит. На счет того что веб-сервер компилил 3 дня это очень интересно :) это на Pentium 133 Mhz чтоли? а как же MAKEOPTS=-j$X, где Х количество ядер +1, а также ccache, также правильно выбранные флаги уменьшают время компиляции до 40 минут на 4-ядерной машине. Более того можно сделать stage4.tar.gz системы и потом ее просто ставить с минимал-livedvd. В общем вопрос желания а не качества...

Anonymous 2014-01-09 11:11:43 (#)

Наверное потому что Gentoo говно он так популярен и имеет такое огромное количество пользователей. Да, генту конструктор тот ещё, но если бы он был так плох, на него бы давно забили.
Gentoo — лучше всех! Я гарантирую это! :))
Новый комментарий



© 2006-2016 Вадим Калинников aka MooSE