Этот материал сочинялся на протяжении нескольких лет, включил в себя все ранее публиковавшиеся мои статьи по данной теме и в конце концов вошел в книгу: Алексей Федорчук aka alv. Гуманистический Linux или Ubuntu и сородичи. М.: “Научный мир”, 2006, 392 стр.
Безбрежность моря дистрибутивов Linux требует средств навигации — и это составляет цель настоящей заметки. Правда, рассмотреть все изобилие результатов дистростроения — задача непосильная: чтобы представить масштабы «бедствия», достаточно ознакомиться с содежанием сайта http://distrowatch.com.
Да, пожалуй что, и не нужно это — полный обзор дистрибутивов: пользователь с опытом разберётся и сам, тогда как начинающий, скорее всего, в первую очередь обратится к одной из тех систем, имя которых «на слуху». Поэтому в своем сочинении я ограничусь лишь дистрибутивами, с одной стороны, наиболее известными за пределами мира Open Source — среди широких масс околокомпьютерных трудящихся, с другой же — теми, которые я лично использовал. Или — хотя бы устанавливал и видел в рабочем состоянии.
Рассмотрение дистрибутивов упорядочено по трем группам — rpm-based, tarball-дистрибутивам и deb-клонам, что в данном случае, применительно к конкретным представителям, совпадает, соответственно, с разделением на «дистрибутивы для всех», дистрибутивы для себя и промежуточную категорию, члены которой могут успешно выступать как в том, так и в другом качестве.
В настоящей статье рассмотрены лишь отличительные черты дистрибутивов, важные для конечного пользователя, те, что способны облегчить ему выбор первой системы. При сочинении ее использовался документ Выбор первого дистрибутива. Пособие для начинающих, созданный коллективным творческим гением посетителей Юниксфорума и участниками проекта POSIX.ru. Всем, принявшим участие составлении «опорного» текста (и особенно Александру Еремееву aka Shurik, заложившему в него краеугольный камень), я хотел бы выразить свою признательность.
Rpm-based, или «дистрибутивы для всех»
Дистрибутивы, использующие формат пакетов rpm (совсем не обязательно прямые клоны или потомки Red Hat) пользуются наиболее широким распространением. В первую очередь — благодаря корпоративным инсталляциям, тогда как популярность их среди индивидуальных пользователей-энтузиастов в последние годы идет на убыль. Однако по справедливости начать следует именно с них.
Итак, все дистрибутивы, перечисленные в этом разделе, базируются на пакетах формата rpm. Достоинства и недостатки его мы здесь обсуждать не будем. Однако, каковы бы ни были вторые, два достоинства формата rpm неоспоримы. Первое — то, что это самый распространенный (после исходников) формат распространения свободных программ. И второе — и сам формат, и утилиты для работы с ним подробно описаны во многих «толстых» книгах по Linux и в сетевых источниках.
Как уже говорилось, в данном контексте понятие rpm-based, по какой-то роковой случайности :-), совпадает с понятием «дистрибутив для всех». И действительно, все системы, описанные в данном разделе, являют собой типичные примеры дистрибутивов user-friendly, что на русский я перевел бы как «юзерофильные» дистрибутивы.
Red Hat/Fedora Core
Это — самый популярный (или, точнее, самый используемый) дистрибутив Linux на протяжении многих лет. До недавнего времени он распространялся, в различных вариантах, под именем Red Hat. Однако ныне разработчик (одноименная компания) — сохранил это название для коммерческих реализаций своей системы. Свободная же ее реализация, предназначенная для конечных пользователей, именуется Fedora Core. Главное различие между ними в том, что а) собственно Red Hat включает в себя некоторые компоненты, распространяемые не под свободными лицензиями, и б) существенную часть стоимости его составляет техническая поддержка и сопровождение. Собственно, полнотой последних и определяется итоговая цена конкретного варианта дистрибутива. В то же время Fedora Core, лишенная проприетарных составляющих, сохраняет статус свободного продукта, и может быть бесплатно скачана с сайта проекта. Но, соответственно, никакой поддержки при этом не подразумевается. Собственно говоря, и сам по себе Red Hat доступен в Сети свободно — с теми же последствиями.
Программа установки Red Hat/Fedora Core — т.н. anaconda — по умолчанию подразумевает графический режим (с возможностью выбора разрешения и глубины цвета), предоставляющий понятный для начинающего пользователя интерфейс. Однако допускается выбор режима из нескольких вариантов: чисто текстового, режима графической консоли (Frame Buffer), экспертного режима — с отключением автоматического определения устройств.
Главный, самый ответственный, этап установки, разбиение диска на разделы, выполняется специальной утилитой собственной выделки — Disk Druid’ом, достаточно удобно: размер раздела можно указать вручную, можно заполнить все свободное пространство или указать, сколько его должно остаться после. По умолчанию файловые системы создаются как логические тома LVM, однако соответствующим переключателем можно определить их как первичные разделы или логические разделы Extended Partition, а также разместить их на программном RAID.
Среди положительных особенностей дистрибутива (в любом из его вариантов) можно отметить следующие:
динамичность развития — от релиза к релизу он становится всё проще и удобнее для обычного пользователя;
наличие огромного количества уже собранных пакетов rpm; часто такие пакеты собирают сами разработчики программ и размещают их на официальных сайтах своих проектов;
разнообразие способов обновления: к исконной системе пакетного менеджмента yum в настоящее время добавлен apt с интерфейсом synaptic; последний метод до недавнего времени рассматривался как основной, но ныне развитие yum, в рамках Red Hat/Fedora Core было приостановленное, продолжается, и обе эти системы можно рассматривать как равноправные альтернативы;
изобилие источников информации: достаточно сказать, что большинство «толстых» книг, в названии которых фигурирует слово Linux, описывают именно Red Hat.
Как Red Hat, так и Fedora Core давно уже стали системами интернациональными, и потому вполне способны работать в кириллическом окружении. Правда, «из коробки» по умолчанию устанавливается только локаль UTF8-R, что до недавнего времени создавало определенные проблемы с консольными приложениями. Это вызвало волну литературы, посвященной «откату на бомжовскую кодировку» KOI8-R, которой при необходимости можно воспользоваться и ныне. Хотя и локаль UTF8-R на сей момент может считаться вполне работоспособной. И к тому же она являет собой светлое будущее всего человечества.
Поскольку Red Hat (и Fedora Core) по происхождению — «американцы», их разработчики вынуждены считаться с законодательством соответствующего государства. Вследствие чего они штатно не включают в себя такие компоненты, как средства проигрывания ряда мультимедийных файлов (например, MP3). Нет в комплекте (по крайней мере — в свободных вариантах) и Java-инструментария. Свежеустановленная система не поддерживает NTFS — а это актуально для тех, кто использует Linux параллельно с Windows XP. Впрочем, все эти вещи исправляются скачиванием и установкой соответствующих пакетов.
Официальный представитель Red Hat в России — компания Linux, Inc — с некоторых пор распространяет свой вариант этого дистрибутива под название Scientific Linux. Он базируется непосредственно на Red Hat (а не Fedora Core), но включает ряд дополнительных пакетов (в том числе и научного назначения), и традиционно обещает улучшенную поддержку кириллицы.
ASPLinux
Это дистрибутив отечественного производства, разрабатываемый одноименной команией. Он представляет собой клон Fedora Core (ранее — Red Hat), несколько модифицированный с точки зрения прикладного софта и адаптированный для наших условий (в частности, содержащий улучшенную поддержку кириллицы).
Распространяется ASPLinux в нескольких вариантах (не считая чисто серверных): Deluxe о множестве дисков и с полным комплектом документации (брошюра по быстрому вхождению в тему, руководство по установке, руководства пользователя и администратора), Standard — дисков вдвое меньше, из документации лишь руководство по установке, Express — трехдисковый набор с кратким буклетом. Впрочем, наименование вариантов и их комплектация меняется от версии к версии.
Будучи не связанным сугубо американскими ограничениями, ASPLinux при установке по умолчанию включает пакеты поддержки NTFS, MP3, Java, и даже Macromedia Flash. Разумеется, предусмотрена и работа в кириллическом окружении. Правда, в последних версиях дистрибутива у пользователя отняли возможность выбора между koi8-r, cp1251, и UTF8, оставив только две последние локали. Однако качество русификации — на достойном российского продукта уровне. Вплоть до того, что man-страницы — русскоязычные во всех возможных случаях.
Первое, что привлекает внимание в ASPLinux — это программа инсталляции. Она не унаследована от Red Hat, а представляет собственную разработку — по моему скромному мнению, одну из лучших в ряду «юзерофильных» дистрибутивов вообще. Допускается как «быстрая» инсталляция предопределенных пакетных наборов (для разработчика, для сервера, и т.д.), так и индивидуальный их выбор. Причем — и это редкость среди дистрибутивов rpm-based, — в последнем случае можно отказаться от «обязательных» зависимостей даже в составе базового комплекта: вследствие особенностей формата rpm, это не обязательно влечет за собой неработоспособность инсталлируемой программы (разумеется, если пользователь точно знает, что делает).
Другая отличительная особенность ASPLinux (по сравнению с материнской системой) — использование yum в качестве менеджера пакетов для доукомплектации и обновления системы. Собственно, именно в этом дистрибутиве он и продолжал развиваться (когда, как уже было сказано, Red Hat/Fedora Core, казалось, изменили ей в пользу apt). Хорошо это или плохо — вопрос спорный: хотя сам по себе yum достаточно удобен, но он «тащит» с сервера служебную информацию о пакетах, которая зачастую имеет объем, сопоставимый с размером самих пакетов. При наличии дешевого и широкого канала это не проблема, но при модеме или дорогом трафике — весьма неприятно. И еще: поскольку ASPLinux базируется на той же Fedora Core, то зачастую обновления пакетов выходят с задержкой, и, опять таки, могут приближаться по размеру к самому дистрибутиву.
Разработчики ASPLinux — большие любители патчить ядро, вплоть до того, что его и «папа родной» с kernel.org не узнает. Как результат — проблематичность скомпилировать какую-то программу из исходников, а также обновления ядра из канонического источника — для получения неизменно превосходного результата необходимо ждать его «пакетной» сборки от майнтайнера (впрочем, то же самое можно сказать и о Red Hat/Fedore Core — существуют большие сомнения, что они будут полностью функциональны на каноническом ядре).
Пользователям ASPLinux предоставляется техническая поддержка: по электронной почте (с гарантированным ответом в течении нескольких часов), или через форум на сайте фирмы-производителя, в котором активно участвуют разработчики дистрибутива. Кроме того, большая часть сведений, которые можно почерпнуть из «толстых» книг про Red Hat, применима и к ASPLinux.
Novell Suse/OpenSuse
Разрабатывавшийся одноименной немецкой компанией, этот дистрибутив ныне принадлежит фирме Novell. Имеет свободную Download-редакцию и несколько «коробочных» вариантов. Статус последних различен, исчерпывающие сведения по этому вопросу можно получить из следующего обсуждения.
Наряду с Suse, развивается проект OpenSuse — полностью некоммерческий вариант дистрибутива. Отношение его к материнской системе — примерно такое же, как Fedora Core к Red Hat. С тем отличием, что OpenSuse выступает по отношению к Suse в качестве фронтирной разработки — именно на нем «обкатываются» все новшества, которые потом включаются (или не включаются) в коммерческие версии. То есть если Fedora Core можно рассматривать как Red Hat для бедных, то в отношении OpenSuse скорее подойдет определение — Suse для смелых.
Suse имеет имеет собственный инсталлятор YAST2, который выполняет также роль сквозной системы конфигурирования. Он отличается непревзойденной простотой использования — но до недавнего времени был несовместим с ручным методом конфигурирования: любой запуск YAST2 приводил к сбросу всех ручных настроек (а в особо тяжелых случаях — их сочетание вызывало полную неработоспособность системы). Однако в текущих версиях Suse ручной и автоматический методы конфигурирования уживаются вполне мирно.
Отличительная особенность Suse — gросто шикарный набор драйверов, в том числе и проприетарных, которые входят в дистрибутив. Сказывается направленность разработчиков на ноутбуки — практически 100-процентная гарантия установки и работы SuSe с любыми ноут-специфичными устройствами, включая WiFi, Winmodem’ы, видеокарты и т.д. Не случайно именно этот дистрибутив избирают в качестве основы производители, рискующие предустанавливать Linux на ноутбуки.
Не смотря на свое немецкое происхождение, Suse — дистрибутив интернациональный, и потому не имеет противопоказаний для использования в кириллическом окружении. Правда, русификация его не доведена до конца — во многих приложениях половина менюшек на английском, а половина на криво переведённом русском. Локаль по умолчанию — UTF8 со всеми вытекающими отсюда последствиями — впрочем, ныне это за грех считать уже нельзя. Официальная техподдержка на русском языке для индивидуальных пользователей пока затруднена. Однако, ИМХО, это компенсируется очень хорошим набором ttf-шрифтов, в том числе кириллических, что снимает необходимость в использовании шрифтов от «классового врага».
Mandrake
Этот дистрибутив французского происхождения до недавнего времени был известен под именем Mandrake: свое ныншнее название он приобрел после слияния с бразильской Linux-компанией Connectiva, разрабатывавшей ранее одноименный дистрибутив. Генетически происходя от Red Hat, ныне Mandriva не имеет с ним почти ничего общего (кроме формата пакетов rpm).
Распространяется в двух основных пользовательских редакциях (не считая серверных): обычной, доступной для свободного скачивания и тиражирования, как любой продукт Open Source, и «клубной», в укомплектованном виде предназначенной для членов т.н. Mandriva Club (то есть лиц, оплативших свое членство), и включающей дополнительный софт, в том числе и проприетарный. Члены клуба пользуются и другими льготами — например, возможностью обновления версий раньше, чем это станет доступным простым смертным. В общем, Mandriva Club — нечто вроде Союза Советских писателей, и потому его члены — несколько «равнее», чем прочие, равные между собой пользователи.
Инсталляционная программа Mandriva отличается исключительной понятностью для начинающего — не случайно для многих поколений пользователей именно этот дистрибутив оказался первым в жизни. Кроме того, он одним из первых среди всех Linux’ов (вслед за Suse) обзавелся сквозной системой конфигурирования — так называемым набором Drake, весьма понятным для мигранта-«подоконника», и позволяющим настроить абсолютно все в системе. При этом возможность ручного конфигурирования сохраняется — но при недостаточном знакомстве именно с этим дистрибутивом «рукоблудие» может привести к печальным последствиям.
Разработчики Mandrake были и среди пионеров интернационализации Linux — и в результате список поддерживаемых языков (кому это реально нужно) превышает все мыслимые потребности. Причем в этом ряду русификация занимает не последнее место. А с недавних пор на сайте украинской компании Lafox появилась русскоязычная документация, отличающаяся исчерпывающей полнотой.
И еще одно качество отличает Mandriva (и Mandrake со дня его зарождения) — я назвал бы его фронтирностью: испокон веков все инновации мира Linux и Open Source появляются в нем практически мгновенно. Оборотная сторона чему — непрогнозируемость, выраженная как в невоспроизводимости процесса установки, так и в нестабильности работы некоторых релизов. Впрочем, как говорят стойкие пользователи, эти недостатки постепенно изживаются.
Нельзя не отметить, что недавно создатель дистрибутива и бессменный руководитель команды — Гаэль Дюваль, — был уволен из основанной им же компании, и направление развития Mandriva в ближайшее время остается не вполне ясным.
Altlinux
Это — один из первых отечественных дистрибутивов Linux, первоначально представлявший собой локализованный вариант Mandrake и распространявшийся под именем Mandrake/Russian Edition. Позднее получил свое имя по компании-разработчику — Altlinux.
Дистрибутив включает три пользовательские редакции: многодисковый Altlinux Master, облегченный Altlinux Junior и однодисковый ALT Linux Compact. Разумеется, его можно скачать с ряда ftp-серверов, выступающих как официальные зеркала проекта. И с дистрибутивом неразрывно связан Sysiphus — огромный репозиторий rpm-пакетов, из которого, собственно, и комплектуются все варианты Altlinux (и который может служить для обновления первично инсталлированной системы).
До недавнего времени в Altlinux использовалась установочная программа, унаследованная от Mandrake/Mandriva. Однако, начиная с версии 3.0, дистрибутив обзавелся инсталлятором собственной разработки. А в качестве средства управления пакетами используется механизм apt.
Поскольку команда Altlinux — в числе патриархов русского дистростроения, прекрасная поддержка кириллического окружения удивления не вызовет. Однако и в области поддержки языков «бывшего Советского Союза» этот дистрибутив вне конкуренции. Не забыты и языки нынешней России — ведь не во всех ее городах и весях говорят только по-русски. Кроме того, в дистрибутиве уделяется большое внимание поддержке языков Fromer USSR — в частности, тюркских языков Средней Азии (которая некогда «нашей Азией звалась — Азией без края», (с) почти Киплинг).
Одна из наиболее специфичных особенностей дистриубтва — система безопасности, пронизывающая его снизу доверху. Что само по себе, может, и не плохо. Но в силу этого некоторые вещи (доступ к правам суперпользователя, монтирование и т.д.) могут работать не совсем так, как ожидалось бы от системы пользователем других дистрибутивов. И в результате Altlinux — пожалуй, чемпион по количеству дистрибутив-специфичных знаний, которых он требует от своего приверженца.
Техническая поддержка дистрибутива осуществляется преимущественно через списки рассылки. Вроде есть и обычная поддержка по e-mail, но на этот счет существуют противоречивые отзывы пользователей. А вот форума поддержки на фирменном сайте нет однозначно — и это принципиальная позиция разработчиков. От виртуального общения с которыми вообще складывается мнение, что они, подобно незабвенной даме из раннеперестроечных времен, не хотят поступаться принципами…
Тем не менее, вокруг Altlinux сложилось большое и устоявшееся сообщество русскоязычных пользователей. Так что начинающий свое приобщение к Linux с этого дистрибутива без помощи не останется.
Tarball-дистрибутивы, или «дистрибутивы для себя»
Все перечисленные выше дистрибутивы обычно однозначно рекомендуются для начинающих пользователей. В отношении же следующих систем, которые классифицируются как «дистрибутивы для себя», это не столь очевидно. Однако они пользуются достаточной известностью и популярность. Более того, некоторые из описанных ниже дистрибутивов, например, Slackware, оказались первыми в жизни целого поколения пользователей, включая вашего покорного слугу, — и за то они благодарны судьбе (и я, и я, и я того же мнения). Поэтому информация о tarball-дистрибутивах не будет лишней для начинающего пользователя — дабы каждый мог бы решить для себя, подходят они ему в качестве «пробы пера», или нет.
Slackware
Это самый древний (из ныне живущих) дистрибутив Linux’а, имеющий своим местопребыванием сайт slackware.com, где можно получить как iso-образы последней стабильной версии, так и пакеты из версии текущей. С самого начала и по сей день он связан с именем своего создателя — Патрика Фолькердинга. На протяжении более чем 10 лет в нем почти ничего не меняется (кроме версий пакетов, разумеется). А именно:
система установки и настройки, очень похожая на sysinstall от FreeBSD;
BSD-стиль инициализации — до недавнего времени стартовая схема Slackware была самой простой из всех, наблюдаемых в Linux-дистрибутивах;
формат пакетов — чистый tgz, без всякого намека на контроль зависимостей;
дистрибутивные пакеты всегда собираются в бинарный вид из пакетов авторских, без какого-либо пропатчивания (это относится и к базовому ядру дистрибутива);
возможность сборки собственных пакетов — build-скрипты, специально предназначенные для этой цели, выложены на сайте проекта вместе с исходниками;
база пакетов в принципе наличиствует, но практически необходимости в ней почти никогда не возникает.
Отсутствие контроля зависимостей — это и преимущество, и недостаток данного дистрибутива (так сказать, «неволя и величие Slackware»); проще всего считать такое положение дел его неотъемлемой особенностью. Представим себе следующий случай: в одном каталоге лежит сотня-другая пакетов, предназначенных к установке. Каковую можно выполнить всего одной командой:
$ installpkg ./*.tgz
Что характерно, команда эта дается без всяких опций. Правда, что потом будет с этим установленным софтом, никто не дает никаких гарантий. И если какой-либо свежеустановленный пакет запускаться откажется — придется разбираться пользователю.
Однако в Slackware имеются и механизмы автоматизированной установки и обновления пакетов, из сетевых репозиториев, и не один: slapt-get, swaret, getpkg, slackpkg, pacman… Наконец, к этому дистрибутиву небезуспешно прикручиваются порты FreeBSD и система pkgsrc от NetBSD (последняя поддерживает Slackware вполне официально).
Русификация Slackware в свое время было полем, на котором оттачивали свое умение в этом деле многие и многие начинающие пользователи. Однако сейчас она сводится к запуску всего одного скрипта, примеров которых в Сети множество.
Более-менее приличные и нужные настройки можно сделать через утилиту pkgtool (она же служит для управления пакетами), к ней выпущенно множество графических front-end’ов.
Документации по дистрибутиву неимоверно много, на все вопросы давно найдены ответы — нужно лишь поискать чуть. Так как по сути в дистрибутиве ничего не меняется, она практически не подвержена фактору старения. Кстати, сама документация поставляется вместе с дистрибутивом — на английском, но неплохая. На русский же язык переведена «серая книга» — сочинение Патрика сотоварищи, посвященное установке, настройке и использованию Slackware. Техподдержки нет в принципе — и в принципе она не нужна. Достаточно лишь запомнить сайт slackware.ru — там лежит множество материалов и имеется форум, и linuxpackages.net — здесь можно найти готовые пакеты и ссылки на iso-образы.
В общем, этим дистрибутивом пугают детей, то есть начинающих пользователей. Однако на самом деле он прост, как первый советский рубль, хотя простота его столь же хорошо скрыта.
И еще: Slackware не только стал прародителем многочисленных клонов, но и оказал идейное влияние на ряд дистрибутивов, которые нельзя считать его прямыми производными. В их числе — Gentoo, CRUX, Archlinux. А такие системы, как Rubyx и F, представляют собой контаминацию идей Slackware и того же Archlinux.
Gentoo
Gentoo Linux — это дистрибутив, который становится всё более и более популярен в OpenSource-сообществе как благодаря поддержке большого количества аппаратных платформ, так и исключительно гибкой и удобной системы «портежей» («portage»), построенной по мотивам портов из FreeBSD.
Gentoo является типичным представителем семейства дистрибутивов Source Based, являя собой столь же показательный пример реализации идеи сквозного портирования. Подходит ли он начинающему пользователю — вопрос спорный. Однако в последнее время он приобрел широкую известность, и я счел необходимым дать информацию для того, чтобы этот самый начинающий пользователь смог бы ответить на него сам.
Главной особенностью Gentoo является отсутствие специальной программы-инсталлятора: вся установка выполняется прямыми командными директивами из командной строки, а в качестве единственного средства конфигурирования выступает текстовый редактор. Это вызывает необходимость в чтении руководств и инструкций — благо, таковые, буквально на все случаи жизни, в изобилии представлены на сайте проекта (и большинство имеется в русских переводах).
К числу его достоинств можно отнести:
Возможность достижения высокой производительности за счет предельно глубокой и гибкой оптимизации системы под аппаратное обеспечение.
Удобные средства установки и удаление программ через систему портежей.
Большое количество приложений в системе портtжей, которая обновляется очень оперативно.
Возможность устанавливать Gentoo из произвольной Linux-системы (напримаер, с Knoppix LiveCD или любогой иного «живого» дистрибутива, содержащего компилятор gcc), без отрыва от текущей деятельности. В этом случае диски Gentoo не требуются: весь процесс установки можно выполнить из сети.
Из безусловных недостатков следует отметить очень долгую установку (сборка готовой мультимедийной или офисной системы может занять от пары суток до недели — в зависимости от мощности машины). Эффективное использование Gentoo практически невозможно без скоростного и, главное, дешевого канало доступа к Интернету.
В общем, можно констатировать, что Gentoo — дистрибутив на любителя. Однако знакомство хотя бы с процессом его установки «в живе» способно дать начинающему пользователю немало знаний в отношении дисковой разметки, файловых систем, зависимостей программ, и так далее. В первую очередь — благодаря принудительному чтению документации (повторяю, без этого установить Gentoo практичски невозможно).
Archlinux
Должен сразу признаться — Archlinux принадлежит к числу моих любимых дистрибутивов, и говорить о нем я мог бы долго. Поэтому в контексте настоящей темы постараюсь дать лишь краткую его характеристику.
Archlinux — представляет собой промежуточный вариант между чистыми Source Based дистрибутивами и дистрибутивами пакетными. С первыми его сближает портообразная система ABS (Archlinux Building System), предназначенная как для сборки индивидуальных пакетов, так и для тотальной пересборки системы. Тем не менее, основная форма распространения дистрибутива — пакетная, и в виде бинарных же пакетов штатно происходит обновлние системы.
Основные особенности дистрибутива — следующие:
Простой текстовый инсталлятор, сходный с таковым Slackware, но еще проще (как по исполнению, так и по использованию).
Наличие системы управления пакетами (pacman) и системы портов для сборки из исходников (ABS).
Очень простой формат бинарных пакетов, представляющих собой почти чистые тарбаллы *.tar.gz с минимальной информацией о зависимостях; последние в основном описываются во внешней по отношению к пакетам базе данных, используемой системой управления пакетами — pacman.
Очень простая BSD-подобная система стартовых скриптов.
Дистрибутив распространяется в виде iso-образов в двух варианта: полного, включающего Иксы и некоторое количество приложений для них (в качестве оконного менеджера выступает WindowMaker), и так называемого base, включающего только основные комопненты системы, достаточно близкие к Base Linux. Образы дисков обновляются достаточно редко — релизк-цикл дистрибутива составляет минимум полгода, а то и больше. Однако в репозитории пакетов доступны самые свежие версии бинарных пакетов, обновлять которые можно также через ABS; правда, доступ и к тем, и к другим — только по Сети.
Установка Archlinux достаточно проста, но требует некоторых предварительных знаний — в частности, о дисковой разметке и файловых системах. Автоматизированные средства настройки полностью отсутствуют — конфигурирование выполняются руками, правкой соответствующих файлов в текстовом редакторе. Документация — очень понятная, но лаконичная, и описывает только дистрибутив-специфические вещи (предполагается, что общие сведения автор уже знает или почерпнет из других источников).
Эффективное использование дистрибутива возможно только при хорошем и недорогом коннекте. Правда, особенности формата пакетов Archlinux позволяют при обновления относиться к трафику достаточно экономно.
Все сказанное выше, казалось бы, делает Archlinux мало пригодным для начинающего пользователя. Однако — не спешите, следующие особенности вполне компенсируют его недостатки:
Очень быстрое развертывание базовой системы, как с диска, так и при установке по ftp (последняя лимитируется только скоростью подключения).
Быстрая и простая система актуализации дистрибутива посредством утилиты pacman (при наличии подключения к Сети), практически мгновенная установка бинарных пакетов.
Очень оперативное обновление репозитория — большинство пакетов в виде бинарников доступны через день, а то и через часы, после их выхода.
Не поражающий воображение, но вполне достаточный объем репозитория, содержащего все необходимое в обычной жизни.
Очень прозрачная система портов ABS, позволяющая легко индивидуализировать систему и дополнить ее пакетами, не попавшими в официальный репозиторий.
Debian-клоны, или компромиссный вариант
Debian и его клоны (а, как было показано в предыдущей главе, этот дистрибутив представляет собой очень благоприятный объект продуктивного клонирования) — дистрибутивы пакетного типа, распространяемые в бинарниках. Однако система управления пакетами позволяет легко выполнить полную пересборку системы, превращая ее в Source Based. И комплектация его такова, что, с одной стороны, сразу после установки debain может выступать как система «для всех», с другой — может послужить основой собственного конструирования.
Debian…
Debian (или, точнее, Debian GNU/Linux — такового официальное наименование этого дистрибутива) представляет собой результат деятельности свободного сообщества разработчиков. Он распространяется в различных формах (в виде iso-образов, файловых наборов и т.д.), доступных как для свободного скачивания, так и тиражирования и распространения.
Debian имеет три основные ветки: stable, testing и unstable:
stable — это официально выпущенный (официально поддерживаемый) дистрибутив, содержащий не очень свежие, но очень тщательно оттестированные и проверенные версии программ; после выхода очередной версии stable эта версия, строго говоря, вообще не обновляется, а все выходящие обновления к stable — это исключительно secure-updates, закрывающие проблемы безопасности, обнаруженные во входящих в него программах уже после его выхода; за счёт этих двух факторов Debian stable заслуженно считается одним из самых надёжных дистрибутивов, что достигается ценой упомянутого отставания в версиях;
testing — ветка, которая готовится стать следующим выпуском; не обеспечивает того максимального уровня безопасности, который даёт stable (тем не менее для домашнего использования уровень вполне достаточный), но отличается от неё более актуальными версиями софта;
unstable — эта ветка содержит самые свежие версии пакетов; в отличие от testing, ветка unstable никогда не будет выпущена в качестве релиза, но пакеты из нее постепенно, по мере отладки, «переползают» в ветку testing.
Помимо трёх основных веток, существует ещё и ветка experimental, которая фактически находится на стадии преманентного бета-тестирования; правда, использовать ее предлагается исключительно на свой страх и риск.
Основное удобство такой схемы версифицирования заключается в том, что в одной системе легко уживаются (с оговоркой о зависимостях, конечно) пакеты из нескольких разных веток одновременно; при желании обновить, скажем, до стадии unstable или experimental одну программу, вы сможете при этом всю остальную систему оставить в состоянии testing или даже stable.
Надо отметить, что попадание конкретных версий ПО, в других дистрибутивах входящих в основную ветку, в testing, unstable или даже experimental объясняется отнюдь не меньшей стабильностью ПО по сравнению с другими дистрибутивами, а напротив — большей строгостью авторов дистрибутива к упомянутой стабильности.
В основной состав (т.н. секция main) дистрибутива попадают исключительно свободные программы. Все программы с малейшими лицензионными отклонениями либо попадают в секции contrib или non-free, либо вообще доступны только в сторонних источниках; таким образом, за вами остаётся выбор — использовать только свободное ПО в самом строгом понимании этого термина, или же добавлять и что-то под это строгое понимание не подпадающее.
Дебиан фактически не имеет никакого графика выхода новых версий. Девиз его разработчиков: выйдет тогда, когда будет готово. С одной стороны, это временами приводит к затянувшимся ожиданиям, с другой — напрочь исключает выпуск недоработанной системы, рассчитаной лишь на то, что бы успеть к заявленной дате релиза (что бывает практически с любым софтом, имеющим жесткий релиз-график).
Пожалуй, основным недостатком Debian для начинающего пользователя, по сравнению с описанными выше дистрибутивами «для всех», можно назвать почти полное отсутствие централизованных графических утилит настройки (кроме, конечно, таких дистрибутив-неспецефичных вещей, как, например, центр управления КДЕ). Вместо этого существует интерфейс текстового режима для настройки отдельных пакетов (да и сам установщик выполнен в том же стиле текстовых меню). Обратная сторона такого подхода — возможность в любой момент перенастроить любой отдельно взятый пакет, без необходимости вспоминать, в какой ветке общесистемного настройщика его параметры находятся.
Список же достоинств Debian весьма обширен:
первое и самое заметное — apt (метасистема управления пакетами); в связи с чем проблемы с установкой программ и разрешением их зависимостей отсутствуют как класс;
огромный репозитарий скомпилированных, готовых к использованию, пакетов, в котором есть практически всё, что создано творческим гением сообщества открытых исходников; из всех распространённых дистрибутивов (по крайней мере, пакетных) Debian имеет самый большой набор ПО;
простота как в установке и настройке, так и в эксплуатации — всё логично, понятно, прозрачно и достаточно унифицировано; вероятно, поэтому среди пользователей Debian’а немало как людей «от науки», так и технарей некомпьютерных специальностей — время, затрачиваемое на настройку и «тюнинг» системы, несравнимо мало по сравнению с временем собственно на работу в ней;
весьма умеренный объём базовой установки — менее 200 мегабайт без Иксов, — а также возможность установив «базовую» систему, сразу начать работать в ней, доустанавливая остальное только по мере необходимости, позволяют при желании жёстко контролировать занимаемое на диске пространство;
обширное русскоязычное сообщество, помощь от которого можно получить как в русскоязычной Email-конференции debian-russian@lists.debian.org, так и на многочисленных сайтах, рассыпанных по просторам рунета.
Дополнительным фактором, который также можно отнести к достоинствам, является то, что на Debian основано немалое количество т.н. LiveCD (из них наиболее известный, но далеко не единственный — Knoppix), которые позволяют ознакомиться с особенностями дистрибутива без его установки, и при положительном результате — развернуть полноценную Debian-систему.
…и его клоны
Описанию Debian-основанных дистрибутивов будет посвящена большая часть этой книги, поэтому здесь я лишь кратко остановлюсь на основных их особенностях.
Главная из таких особенностей — все клоны Debian не только сохраняют полную бинарную совместимость с родительской системой, но и практически идентичны ей в отношении конфигурационных файлов, файловой иерархии и так далее. Это, во-первых, дает возможность восполнить недостающие пакеты из любого родственного репозитория. Во-вторых, знания и навыки, приобретенные при работе с любым Debian-клоном, будут гарантированно востребованы, если по жизни придется столкнуться с каким-либо иным предтавителем этого семейства.
Немного о BSD-системах
До сих пор речь шла о различных дистрибутивах (то есть разновидностях) одной и той же операционной системы — Linux. Однако не Linux’ом единым жив мир свободных POSIX-совместимых операционок — не меньшую роль в его развитии играли и играют BSD-системы — FreeBSD, NetBSD, OpenBSD и недавно появившаяся DragonFlyBSD. Одну из них — FreeBSD с ее разновидностями, — я и охарактеризую кратко в качестве примера (и расширения кругозора для).
FreeBSD
Для начала еще раз подчеркну, что это не дистрибутив Linux, а совершенно отдельная (хотя и родственная) операционная система. Обычно она рассматривается как сугубо серверная платформа (по разным оценкам, до 40% серверов Рунета работает под ее управлением). Однако и применение ее как настольной операционки для обычных пользователей никем не запрещено. Разрабатывается FreeBSD сообществом независимых разработчиков, дистрибутив доступен для свободного скачивания и тиражирования с сервера проекта и его многочисленных зеркал.
Итак, главная особеннось FreeBSD — в том, что это не Linux, хотя и похож! В некоторых деталях эти операционки существенно отличаются друг от друга, в результате чего часто возникают недоразумения — например, при использовании команды mount, настройке виртуальных консолей, автоматического старта Иксов, и так далее. Однако база льзовательских приложений у Linux и FreeBSD — одна и та же. И потому с точки зрения пользователя (не админа) разницы между ними практически нет. А многие административные функции (например, управление учетными записями) во FreeBSD реализованы лучше.
Установка требует представления о BSD-специфичной номенклатуре устройств, о схемах разметки диска вообще и особенностях BSD-разметки в частности (понимания того, что Extended Partition не есть непременный атрибут дисковой разметки, логические диски можно создавать и непосредственно в Primary Partition). Однако это — и все, что требуется от пользователя: для установки достаточно освоения BSD-специфики разметки и номенклатуры устройств на уровне пары простых рецептов. Что, кстати говоря, вельми зело способствует расширению кругозора пользователя.
Инсталлятор FreeBSD, он же — универсальный ее конфигуратор, sysinstall, устроен на первый взгляд не совсем логично. В частности, одни и те же опции повторяются в пунктах меню Установки и Конфигурирования. Однако все становится просто и понятно, если осознать один факт — установка FreeBSD разбивается на два этапа: первый — это установка базовой системы, обязательная к выполнению, второй же — установка дополнительных компонентов и постинсталляционное конфигурирование, что может быть выполнено и в любой момент времени в дальнейшем. Важно также понимать, что Иксы и почти весь дополнительный софт — абсолютно те же самые, что и в Linux. А при конфигурировании в сомнительных случаях всегда можно положиться на умолчания sysinstall — обычно не идеальные, но непременно разумные.
Сам по себе инсталлтор имеет архаичный псевдографический интерфейс, менее богатый возможностями автоматизации, чем графические установщики юзерофильных Linux’ов, и не столь гибкий, как универсальный инсталлятор Gentoo (bash+текстовый редактор). Однако его встроенная система помощи вполне достаточна для освоения всех функций программы, а всякого рода оптимизирующие настроки могут ыть выполнены и в дальнейшем — на уже установленной системе.
Круг поддерживаемого FreeBSD оборудования уже, чем в Linux: нет поддержки 3D-графики для карт, отличных от Nvidia, насколько мне известно, не все гладко с «крутыми» звуковыми платами (точнее, нет возможности использовать их продвинутые особенности), практически нет шансов найти драйвер от производителя для какого-либо нестандартного или экзотического устройства. Но: поддержка оборудования во FreeBSD, коль скоро уж она имеет место быть, реализована, как правило, лучше, чем в Linux. Все устройства, критичные для установки и работы системы, поддерживаются безукоризненно — практически исключены осложнения с дисковыми контроллерами, SATA, ATA RAID и тому подобными устройствами.
Набор пакетов на установочных дисках ограничен, вполне возможно, что нужного пакета там не окажется. Установка дополнительных пакетов (из бинарников или портов) требует достаточно скоростного и, особенно для работы с портами, дешевого канала. Однако набор пакетов и портов для FreeBSD охватывает абсолютно весь свободный софт, в принципе доступный в виде исходников. Возможно получение пакетов или исходников для портов на одной машине (например, на службе нахаляву) и установка их на совсем другой — например, дома.
Под FreeBSD практически не разрабатывается никаких специфических коммерческих приложений. Однако, благодаря режиму бинарной совместимости с Linux возможен более или менее простой запуск всего Linux-специфичного (в том числе и коммерческого) софта — от RealPlayer и Flash до Oracle и подобных монстров. Исключений практически нет, вопрос только в трудозатратах.
Разумеется, никакой официальной техподдержки FreeBSD в природе не имеется. Не так велико и количество литературы о ней — особенно в сравнении с популярными дистрибутивами Linux. Однако это компенсируется изобилием онлайновой документации, начиная со знаменитого FreeBSD Handbook, практически вся она имеется на дистрибутивных дисках, а в Сети доступна в русских переводах. Ну а книг о FreeBSD хоть и мало, но те, что есть — хорошие:-).
И, наконец, последнее. В отличие от Linux’ов, которых много, FreeBSD — одна: все вариации на эту тему, от Freenzy до PC-BSD, представляют собой разные способы распространения и комплектации одной и той же ОС. Очень важно, что все прочитанное начинающим пользователем про FreeBSD, относится именно к ней, ему не нужно гадать, как это бывает с Linux’ом, относится ли данное описание к системе вообще или представляет собой специфику конкретного дистрибутива. Более того, все знания про FreeBSD могут быть приложимы к любой иной BSD-системе (может быть, лишь с незначительной коррекцией).
PC-BSD и DesktopBSD
Это — два дистрибутива FreeBSD. Да-да, и у FreeBSD появились дистрибутивы. Только, в отличие от дистрибутивов Linux, оба они представляют собой самую обычную FreeBSD, снабженную графическими инсталляторами (весьма сходными), которые, кроме базовой системы, в автоматическом режиме устанавливают еще и некий предопределенный набор приложений, включающий Иксы и KDE. Старт системы после установки также выполняется в графическом режиме, с авторизацией через Kdm.
Отличительной особенностью PC-BSD является еще и собственная система управления пакетами, необычная для POSIX-систем, но вполне удобная в обращении. Впрочем, она предназначена только для установки дополнительного «крупногабаритного» софта (типа Openoffice.org или Mozilla): для обновления базовой системы используется обычный для FreeBSD механизм make world, а основные приложения устанавливаются через систему портов. Инсталлятор DesktopBSD поддерживает разные языки, в том числе и русский (вероятно, в силу своего немецкого происхождения).
Обе системы очень молоды, и говорить о их достоинствах, недостатках и перпективах развития преждевременно. Однако к настольному использованию они более чем пригодны. И вообще, их следует рассматривать в певую очередь как системы быстрого вхождения в BSD-мир — с этой ролью обе они справляются, позволяя в дальнейшем безболезненную миграцию на обычную FreeBSD.
Заключение
Я не беру на себя смелость дать конкретные рекомендации о том, какой дистрибутив лучше всего подходит для первичного знакомства, какой — для домашнего использования, а какой — для офисного применения. Выбор остается за пользователем.
И при этом нужно помнить самое главное: какой бы дистрибутив вы ни выбрали, вряд ли этот выбор будет последним и окончательным в этой жизни. Следует быть готовым к тому, что в поисках идеала будет перепробован не один и не два варианта…