главная пошаговое создание livecd что такое linux ISO образы
Операционная система с графическим интерфейсом
На главнуюКонтактыКарта сайта
Полезное


 

ДОБРО ПОЖАЛОВАТЬ


Что такое дистрибутив

В статье о Base Linux мы сформулировали это понятие, определили его состав, а заодно и выяснили, что этот стройный системный комплекс разрабатывается множеством независимых разработчиков в рамках столь же самостоятельных проектов. Возникает очередной вопрос - а кто же берет на себя труд собрать этот комплекс воедино, нарастив его заодно разнообразными опциональными (то есть выходящими за пределы базовой функциональности) приложениями, включая оконную систему X, оконными менеджерами для нее, интегрированными десктопами, офисными пакетами, браузерами, коммуникационными программами и прочими столь необходимыми широким народным массам вещами?

Имя этим героям IT-фронта - майнтайнеры дистрибутивов...

Что такое майнтайнер - ответить нетрудно: это тот, кто взваливает на себя вышеозначенную непосильную ношу. В физическом воплощении это могут быть разномашстабные фирмы - наиболее популярные дистрибутивы, Red Hat и Suse, собираются силами сотрудников одноименной компании и корпорации Novell, соответственно; крупные общественные объединения - ярким примером чему служит уже более чем десятилетнее развитие дистрибутива Debian; отдельные разработчики, формирующие вокруг себя нечто вроде индивидуально-частного предприятия - тут мы вспоминаем Патрика Фолькердинга, на котором вот уже чертову дюжину лет держится дистрибутив Slackware; такие же разработчики-индивидуалы, обрастающие со временем неким сообществом - наиболее показательным примером тут будет Дэниел Роббинс с его дистрибутивом Gentoo; наконец, просто индивидуальные пользователи, решившие собрать индивидуальный же дистрибутив "для себя, любимого" - однако чаша формирования вокруг своего произведения более или менее обширного сообщества не минет и их, свидетельством чему - судьба CRUX Пера Лидена и Archlinux Джадда Винета.

Я привожу лишь примеры, наиболее известные миру или хорошо знакомые мне - на самом деле вариантов образования майнтайнерским команд намного больше, вплоть до прямого Госзаказа - каковым выступит разрабатываемый в Китае дистрибутив Red Flag. Или, скажем, деятельность dot-com предпринимателя и космического туриста Марка Шаттлворта, вдохновляющего и финансирующего команду разработчиков дистрибутива Ubuntu.

Одним словом, майнтайнер дистрибутива Linux - не профессия, а образ жизни. И редкий пользователь этой системы не мечтает на некотором этапе своего развития собрать дистрибутив собственный. А некоторые даже и воплощают свою мечту в жизнь. В результате число дистрибутивов растет из дня в день: только на сайте http://distrowatch.com, самом полном ресурсе по учету и контролю Linux-дистрибуции, их зарегистрировано почти полтысячи (но даже туда попадают не все дистрибутивы).

Остается определить только, что же это такое - дистрибутив Linux?

Для начала - о самом термине дистрибутив (Distributions). Как-то на Linuxforum'е возник вопрос об адекватном русском его эквиваленте. И, после обсуждения и обмена мнениями, участники постановили, что таковым будет слово дистрибутив. Почему? Да потому, что английское Distributions приобретает весьма разный смысл в зависимости от контекста. Для доказательство чего достаточно сравнить три словосочетания: Windows Distributions, FreeBSD Distributions, Linux Distributions.

Действительно, какие ассоциации вызывает у нас словосочетание дистрибутив Windows? Перед глазами сам собой возникает образ CD-бокса с голограммой, подтверждающей подлинность, приобретаемый за 100 примерно американских рублей в респектабельном компьютерном салоне. Или, чаще, его "базарная" копия, купленная за 100 рублей уже пост-советских, подчас более или менее точно воспроизводящая и внешний вид оригинала.

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

И, наконец, слова дистрибутив Linux (в обиходе - distro, а дальнейшем речь пойдет именно о нем) рождают в уме самые различные образы. Здесь будут и красивые коробки с книжками документации толщиной в десятки сантиметров, и аскетические CD-боксики с тонкой брошюркой, и сотни мегабайт качаемых из Сети ISO'шников, записываемых на болванки в домашних условиях, и даже наборчики из двух дискет - все это дистрибутивы Linux. Главное же в том, что вслед за словами дистрибутив Linux практически неизбежно следует имя собственное - Red Hat или Debian, Slackware или Gentoo, - имя им легион.

Подобно человеческому имени, имя дистрибутива - неотрывный его атрибут. Однако каких-либо правил имяобразования для дистрибутивов Linux не сложилось. Обычно они образуются из некоего символического названия и слова-эпонима ОС (например, Red Hat Linux), которое в обиходе часто опускается. Нередко символическое имя представляет собой более или менее осмысленную аббревиатуру. Так именная часть ASPLinux первоначально расшифровывалась как Application Service Provider. Многие майнтайнеры считают своим долгом подчеркнуть роль проекта GNU в формировании софта для своих дистрибутивов. В результате возникают названия вроде Debian GNU/Linux, или SourceMage GNU/Linux. В ходу также аббревиатуры от полного именования дистрибутивов, например, SLES - Suse Linux Enterprise Server.

Важно также, что номер версии дистрибутива никак не коррелирует с таковым ядра Linux. И, в общем случае, не коррелирует ни с чем вообще, вовсе не обязательно начинаясь с какой-то маленькой цифры. Так, первая по времени версия ASPLinux несла на борту номер 7.1, соответствующий версии материнского Red Hat (говорят, была еще и версия 7.0, но ее на Руси никто не видел). Возможны провалы в нумерации версий: Slackware версии 3.5 волшебным образом преобразовалась версию 7.0 (видимо, чтобы не отстать от соплеменного Red Hat). А некоторые майнтайнеры вообще именуют версии по году и сезону выхода, - примером тому старая практика Altlinux и современная - Gentoo и Mandriva. Последняя система, на мой взгляд, наиболее осмысленна и информативна для ориентации во времени выхода версий.

Так чем же завлекательно-таинственный Sorcerer отличается от фундаментального Archlinux'а, неопределенная аббревиатура ASP - от вполне прозрачной LFS, крестоносный CRUX - от легкомысленного Rubyx'а?

Комплекс Base Linux, обеспечивая исходную функциональность системы, далеко не способен удовлетворить запросы большинства пользователей. И потому нуждается в наращивании самыми разнообразными программами - от оконной системы X, менеджеров окон, интегрированных десктопов, до редакторов, браузеров, серверных и офисных приложений, и так далее. Которые, в свою очередь, связаны зависимостями с самыми разнообразными библиотеками и иными разделяемыми компонентами. Разрешение таких зависимостей - задача нетривиальная, и требует определенной системы. И тут мы приходим к определению дистрибутива Linux. Каковое я сформулировал бы так:

Дистрибутив Linux - это система комплектации ядра ОС и комплекса его окружения утилитами и прикладными программами.

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