Исполнители желаний: Обзор конструкторов популярных Linux дистрибутивовМногообразие — блеск и нищета мира Linux. Distrowatch.com знает о 649 дистрибутивах (включая все респины) — но я уверен, что знает он все-таки не про все. А что, если среди этого великого множества нет того, который нужен именно тебе? Не беда! Всегда можно сделать свой дистр, причем не прилагая особых усилий. ВведениеСоздание своего дистрибутива — дело затратное, хлопотное и не всегда оправданное. В отличие от создания респина — слегка модифицированной версии существующего дистрибутива. Для чего может понадобиться создавать свой респин? Допустим, если ты хочешь сделать LiveCD с немного другим набором ПО (те же кодеки, например), другим оформлением или просто хочешь иметь инсталлятор со всеми обновлениями. Все средства для создания респинов можно условно разделить на 2 категории: веб и локальные. Локальные, в свою очередь, делятся на имеющих GUI и требующих вдумчивого чтения манов :). Из веб категории заслуживают внимания:
Из категории локальных приложений можно отметить:
Меняем цвет хамелеонаSUSE STUDIO — средство от Novell, позволяющее производителям ПО легко создавать законченные программные решения для потребителей. Пользователь программного решения просто запускает его в виртуальной машине (или с LiveCD/LiveUSB) и получает рабочее приложение без необходимости установки и настройки под него ОС (что поможет избежать многих ошибок). Регистрация на сайте Suse Studio возможна только по инвайтам (благо, инвайт присылают быстро — мне пришел в течение часа). Логиниться на сайте можно по OpenID или используя аккаунт Google, Yahoo или Novell. После регистрации в системе для хранения своих сборок выделяется 15 Гб места. Сборка своего респина не вызывает затруднений и состоит из 4 шагов:
К запущенному респину можно будет даже подключиться по ssh или vnc. Жаль, что исходящие соединения заблокированы :). Внесенные в процессе тестирования изменения можно будет сохранить с помощью функции «Modified Files», отображающей все измененные с момента запуска виртуалки файлы. В целом, Suse Studio производит впечатление простого, удобного, стабильного и, вместе с тем, достаточно гибкого инструмента. Этим объясняется относительно высокая популярность проекта — в неделю здесь собирают более 4000 респинов. Единственный минус (хотя, для кого как) — это ограниченность в выборе базового дистрибутива для сборки. В общем, must use для любителей Suse! Ubuntu: реконструкцияReconstructor, в отличии от предыдущего проекта, специализируется на Debian и Ubuntu. Проект «условно-платный» — после регистрации каждый месяц тебе начисляется $5, которые можно потратить на те или иные услуги проекта. Стоит отметить, что стоимость услуг довольно демократична (например, сборка проекта стоит$0,3), поэтому $5 в месяц особо фантазию не ограничивают. При желании, баланс можно в любой момент пополнить через PayPal. При создании проекта на начальном этапе выбирается базовый дистрибутив (на момент написания статьи выбор состоял из Debian 5, Ubuntu 9.04 и 9.10 архитектур x86 и x86-64), DE (Gnome, KDE, Xfce или Text Only) и тип респина (LiveCD или образ диска). После создания проекта предлагается выбрать дополнительные пакеты из стандартного репозитория, входящие в твой респин (зависимости разрешаются, но это явно не отображается в списке установленных пакетов). К сожалению, размер добавляемых пакетов отображается без учета зависимостей, поэтому следить за размером конечного образа проблематично. Кроме пакетов из стандартного репозитория, к проекту можно добавлять различные модули, реализующие тот или иной функционал. Вот некоторые из них:
После того, как все необходимые изменения внесены, можно начинать сборку проекта (кнопка «Build Project» в левом верхнем углу). Твое задание на сборку встанет в очередь, и через некоторое время (в зависимости от нагруженности сервиса и объема твоего задания) тебе на почту придет письмо об окончании процесса. Все мои проекты собирались от 10 минут до часа. Собранный проект можно скачать в течении семи дней, после он будет удален. Примечательно, что исходники самого Reconstructor распространяются по лицензии GPLv3, поэтому ты вполне можешь сам поднять подобный сервис. В целом, Reconstructor — хороший, хотя и не лишенн ый некоторых недостатков, сервис. В минусы можно записать ограниченность выбора базового дистрибутива, условную платность, невозможность вычисления конечного размера дистрибутива в процессе добавления пакетов. Некоторые из этих недостатков призвана решить офлайн версия, которую можно скачать со странички www.reconstructor.org/projects/reconstructor/files. Причем доступны две редакции:
Так как первая редакция — это, по сути, только локальный сборщик, обратим пристальное внимание на вторую. В отличие от веб-интерфейса, она позволяет с небольшой погрешностью отслеживать размер будущего респина. Кроме того, есть возможность запуска терминала в chroot-окружении будущей системы, что открывает практически неограниченные возможности по кастомизации. Потенциально интересна также экспериментальная функция запуска иксов в chroot (правда, как и положено экспериментальной функции, у меня она не заработала ни на одной из тестовых машин). Также, как и у веб-интерфейса, у офлайн версии есть модули — специальные скрипты на Bash, выполняющиеся перед окончательной сборкой системы. Еще из интересных функций присутствуют: возможность удалить с диска все Windows-приложения (Firefox, Thunderbird и т.д.) и возможность настройки запускающихся со стартом системы сервисов. Мастер на все рукиЕсли два рассмотренных выше сервиса, в принципе, похожи друг на друга, то Instalinux отличается от них кардинально. Во-первых, никакой регистрации — просто заходи на сайт и начинай работать! Во-вторых, поддержка ряда крупных дистрибутивов: CentOS, Debian, Fedora, OpenSUSE, Scientific, Ubuntu. И, наконец, в-третьих, на выходе получится не традиционный LiveCD/инсталлятор, а netinstall-образ, который при установке скачивает все необходимое из инета. Специальный мастер позволяет за 6 шагов задать основные параметры будущей системы. Кроме стандартных языка, раскладки и часового пояса можно определиться с разбивкой винта (либо разбивать винт автоматически, либо настраивать разбиение в процессе установки). Другой важный шаг — выбор пакетов, входящих в будущую систему. Например, образ Ubuntu с Xfce занимает всего чуть больше 12 Мб, а вот Fedora 12 с LXDE - целых 227 Мб (есть подозрение, что это, скорее, баг сервиса). Скорость скачивания образа не радует — у меня она не превышала 30 Кб/с, хотя при таких размерах это не критично. Кроме самого ISO, на странице загрузки можно скачать получившийся конфиг Preseed, Kickstart или AutoYaST. Загрузившись с получившегося образа, набери Install для того, чтобы начать установку системы. Instalinux предлагает также воспользоваться более продвинутой версией мастера, имеющей возможность ручного редактирования получившегося Preseed/Kickstart/AutoYaST файла. Кстати, разработчики обещают скорое появление поддержки профилей. В целом, приятный и полезный сервис. Если бы еще не ряд мелких недоработок! В частности, не очень проработана конфигурация CentOS (что признают сами разработчики сервиса). Например, у меня при нескольких конфигурациях при попытке установки системы выдавало: «Установочное дерево CentOS в этом каталоге не соответствует вашему загрузочному диску». Даешь очередной *BUNTU!Ubuntu customization kit — еще одна офлайновая прога для кастомизации самого популярного дистрибутива. С релиза jaunty входит в официальный репозиторий. Но все же лучше скачать последнюю версию с официального сайта. Для нормальной работы просит не менее 5 Гб свободного места в домашней папке и доступ в инет. Процесс создания респина состоит из следующих шагов:
Synaptic, консоль или продолжить сборку дистрибутива. По умолчанию включены только репозитории main и restricted, поэтому выбор пакетов довольно скуден. Чтобы поправить эту ситуацию, в Synaptic, в меню SettingsRepositories, нужно включить репозитории universe и multiverse и обновить список пакетов. Если есть желание более тонко настроить систему (например, сменить обои у LiveCD) — можно запустить консоль в chroot. Небольшой совет: выходить из консоли надо командой exit, а не просто закрывая терминал — иначе проект рискует не собраться.
Федорино гореДля другого популярного дистрибутива, Fedora, тоже есть удобные средства для создания респинов. Это GUI-прога Revisor и скрипт Livecd-creator с CLI-интерфейсом. Revisor представляет собой аналог UCK и Reconstructor для Fedora. Пожалуй, единственное существенное отличие — это то, что для создания респина не требуется LiveCD, все пакеты будут скачаны из инета. Для нормальной работы как Revisor, так и Livecd-creator лучше перевести SELinux в разрешающий режим: Для запуска Revisor нужны рутовые привилегии. На первом шаге мастера предлагается выбрать тип респина (CD/DVD инсталлятор и/или LiveCD). Второй шаг — выбор собираемой модели. Тут надо немного пояснить: в основном конфигурационном файле /etc/revisor/revisor.conf описаны «Модели» (специальные секции в конфиге, содержащие особенности сборки той или иной версии Fedora). Основная характеристика конкретной модели — репозитории, откуда будут скачаны пакеты. По умолчанию, Revisor в Fedora 12 может собрать модели Fedora 12 и Fedora Rawhide для архитектур x86, x86-64 и PPC. Добавляя описание моделей в конфиг, можно научить Revisor собирать, например, Fedora 11 и Fedora 13. На следующем шаге можно указать kickstart-файл и выбрать, какие секции из него использовать. Четвертый шаг — выбор ПО. И вот тут меня ждала неприятность: список пакетов отказался выстраиваться в группы, поэтому пакеты пришлось выбирать из большого общего списка (долго, и есть нехилая вероятность забыть что-нибудь нужное). Видимо, неисправленный баг в Revisor, что, в принципе, не удивительно — проект давно не развивался (последняя версия вышла аж в декабре 2007). После выбора пакетов покажется короткая статистка (количество пакетов, объем для загрузки, объем в установленном виде). Следующие шаги — настройка сети, задание параметров загрузки ядра, параметры аутентификации, настройка файрвола, SELinux, X Window и создание пользователя. По окончании настройки Revisor скачает все выбранные пакеты из инета и начнет сборку. Вся эта процедура у меня на виртуальной машине заняла около получаса. Livecd-creator — менее капризный и более гибкий, но не совсем интуитивно понятный инструмент. Эта тулза создает LiveCD, основываясь на конфигурационном файле, синтаксис которого совпадает с kickstart. Установка livecd-creator (входит в состав livecd-tools):
Чем создавать с нуля свой конфиг, проще взять готовый и немного его подредактировать. Готовые конфиги лежат в /usr/share/spin-kickstarts. Создается LiveCD из конфига следующим образом:
Все необходимые пакеты также будут скачаны из инета. Userfriendly GentooЛегко построить свой респин можно даже на базе Gentoo, причем всего за несколько шагов. Только для этого надо воспользоваться специальным средством Calculate Linux Scratch (CLS). CLS — это полностью совместимый с Gentoo дистрибутив, предназначенный для создания собственных LiveCD/LiveUSB. Кроме базовой версии с OpenBox, есть также версия с Gnome (CLSG). Чтобы воспользоваться CLS, надо выбрать в меню загрузки LiveCD пункт Builder. Загрузится обычная на первый взгляд Live-система, в которой потом можно будет тестировать внесенные изменения. Для того чтобы перейти непосредственно к сборке, следует ввести: После выполнения команды цвет приглашения изменится на коричневый и выполнится chroot в /mnt/builder, где и будет происходить сборка. В этом режиме можно устанавливать, обновлять, удалять программы без каких-либо ограничений. После того как все необходимые изменения внесены, можно выйти из режима сборки (набрав exit или <Ctrl+D>) и протестировать изменения в Live-системе. Если все устраивает, то можно запустить сборку своего LiveCD: Образ будет создан в /usr/calculate/share/linux. Если ОЗУ не достаточно, то на этом этапе все может обломиться, поэтому рекомендую заранее подмонтировать к этому каталогу какой-нибудь более-менее емкий rw-носитель. Happy endПрактически для каждого популярного дистрибутива можно найти удобное средство для создания респина: будь то веб или локальное приложение. Но как бы то ни было, ничто не даст столько экспы в этой области, как сборка Linux from Scratch... Автоматизация установкиС незапамятных времен во всех дистрибутивах есть технология, позволяющая автоматически отвечать на вопросы установщика. В общем случае это выглядит как файл с определенным именем в определенном формате, лежащий на диске (хотя он успешно может находиться и где-нибудь в сети). В Debian и его последователях данная технология называется preseed, в Fedora (Red Hat, CentOS и т.д.) — kickstart, в OpenSuse — AutoYaST. Подробнее об этом можно почитать здесь:
InfoPPA (Personal Packages Archive) — персональный репозиторий для Ubuntu, расположенный на сайте http://launchpad.net компании Canonical. Links
Ubuntu customization
|