Выбрать главу

Значительную роль в упрощении процедуры установки и поддержки сыграл формат пакетов RPM (что тогда расшифровывалось как Red Hat Package Manager) и одноимённая утилита для манипулирования такими пакетами, способная отслеживать зависимости и сообщать об их нарушении (но ещё не разрешать их автоматически). По сравнению с молчаливым пакетным инструментарием из Slackware, способным установить неработоспособную, из-за нарушения зависимостей, программу, это казалось большим прогрессом.

Происхождение системы rpm (будем понимать под этим и набор утилит, и формат пакетов, с которыми они работают) теряется во мраке веков. В первых версиях Red Hat использовалась система RPP, обеспечивающая установку пакетов одной командой, проверку зависимостей и запрос информации о них. Однако сборка пакетов для неё требовала существенной модификации исходников, что было напряжно для разработчиков.

Параллельно раннему Red Hat некоторое время развивался дистрибутив Bogus, ныне мало кому известный. В нём имелась собственная пакетная система – PMS (Package Management System), написанная Рикардом Файтом (Rikard E. Faith). Она обладала слабым механизмом запросов информации о пакетах, а проверка их зависимостей просто отсутствовала. Но зато пакеты для PMS можно было собирать непосредственно из исходников, без всякой их модификации.

В ходе подготовки 2-го релиза Red Hat Рикард Файт вместе с Дугом Хоффманом (Doug Hoffman) по контракту с поименованной компанией написали систему PM, вобравшую в себя лучшие особенности RPP и PMS. Хотя практически она так и не была задействована, но послужила одной из основ для RPM.

Собственно система RPM была создана Марком Юингом и Эриком Троэном (Erik Troan), основываясь на всех достижениях предшественников – RPP, PMS и PM. Вариант её, подготовленный для тестовых версий второго релиза, быстроты ради был написан на Perl’е, что создавало ряд проблем, например, при загрузке с дискеты (а в те времена это было достаточно обычным способом старта Linux’а). И непосредственно к выходу релиза Red Hat 2.0 система была полностью переписана на C, база данных пакетов перепроектирована для пущей надёжности и быстродействия, и создана библиотека rpmlib для использования функциональности RPM сторонними разработчиками. Иными словами, система RPM приобрела практически тот вид, в каком мы знаем её ныне, подвергаясь с тех пор только корректировке ошибок и косметическим доделкам.

Система RPM и одноимённый формат, став штатными и общедоступными в релизе Red Hat 2.0, вышедшей в сентябре 1995 года, сразу завоевали популярность и вне родительской системы. Вскоре они были использованы в Caldera Linux, Suse, Mandrake и многих других – и об этом будет говориться в следующих сериях.

Глава двенадцатая. Лицом к пользователю

Red Hat, проторивший путь дистрибутивам для всех с коммерческой поддержкой, не долго оставался на нём одиноким: вскоре у него появились последователи. И первым среди них стала Suse.

Suse: по стопам Red Hat

Дистрибутив Suse изначально назывался S.u.S.E. – эту аббревиатуру производят от имени компании, разработчика и распространителя его (Gesellschaft für Software- und System-Entwicklung), хотя в источниках можно встретить и другие трактовки его имени. Что, впрочем, не важно – форма его несколько раз менялась (S.U.S.E, SUSE, Suse), а в конце концов в чистом виде оно просто вышло из употребления.

Компания S.u.S.E. начинала свою деятельность с распространения уже имевшихся дистрибутивов – SLS и Slackware, а также издания руководств по UNIX и Linux.Однако вскоре ей захотелось иметь дистрибутив собственный, каковой и был создан на имеющейся кодовой базе названных систем. Позднее этот путь станет типичным для большинства коммерческих Linux-компаний.

Suse, как коммерческий продукт вышеозначенной фирмы, начал развиваться практически одновременно с Red Hat, в 1994 году. Сначала это был самый обычный дериват Slackware с германской локализацией и прикрученной универсальной системой установки и конфигурирования – YAST, призванной облегчить труд администратора, сведя его к простановке галочек в соответствующих полях.

Таким образом, Suse стал первым дистрибутивом со сквозной системой установки и автоматизированного конфигурирования. При этом ручные настройки путем прямой правки конфигов – единственный способ доведения до ума материнской Slackware, – отметались напрочь: попытки ручного вмешательство в Suse влекли в те годы последствия непредсказуемые.