Home Wiki > SDB:Создание собственного дистрибутива на основе openSUSE
Sign up | Login

SDB:Создание собственного дистрибутива на основе openSUSE

tagline: Материал из openSUSE

User-away.png Данная статья является устаревшей, поскольку:
Статья очень старая (актуальна примерно для 10.2) и требует обновления, но английская тоже нуждается в обновлении.

Если она в течение некоторого времени не будет обновлена, то она может быть удалена. Пожалуйста, обновите эту статью. Обратитесь к странице обсуждения этой статьи для получения подробной информации.
Icon-obsolete.png Эта статья актуальна для версии '10.2', которая теперь является устаревшей!
Пожалуйста, обратитесь к странице обсуждения этой статьи для получения подробной информации.

Введение

Эта статья посвящена тому, как собрать свой дистрибутив на основе openSUSE. Её следует рассматривать как общие рекомендации. Статья не описывает в подробностях какие пакеты должны быть добавлены или удалены. Окончательный выбор остается за читателем. Статья также подразумевает, что читатель уже ознакомился со статьей Установка SUSE.

Это руководство может быть использовано как пособие для сборки персонального дистрибутива для следующих целей:

  1. Для включения пакетов RPM, которые не включены по умолчанию
  2. Для удаления ПО, которое включено
  3. Для редактирования ПО
  4. Для персонификации дистрибутива
  5. Для установки стандартных настроек для вашего региона, компании, LUG, ...
  6. Для исправления проблемных RPM пакетов, например неправильной системы наложения патчей в OpenSUSE 10.1

Краткая версия

  • Загрузить необходимые ISO образы
  • Если необходимы дополнительные RPM пакеты, загрузить их
  • Выполнить makeSUSEdvd -i [любой другой параметр]
  • Выполнить rembrand -b "#FF00FF" -R /tmp/pink_rpms *.rpm
  • Просмотреть Branding Overview и проверить на наличие left-overs.
  • Отредактировать, удалить и изменить все что необходмо.
  • Выполнить makeSUSEdvd -C

Полная версия

4-й - это наиболее важный пункт краткой версии. Начиная с него я опишу детально каждый следующий шаг.

Загрузка

Вы можете загрузить ISO образы любой версии, какая вам подходит, в пустую директорию, например когда вы используете версию 10.1 в качестве базовой, вы можете загрузить 1-й CD для минимальной установки, первые 3 CD для стандартной установки с Немецким или Английским языком и KDE или GNOME, 5 CD для установки других языков и дополнительных програм, или 6 CD или DVD.

Если вы хотите добавить дополнительное ПО, которого нет в SUSE, вам нужно иметь рабочий RPM пакет. Загрузить его на, к примеру /usr/src/packages/RPMS/* или создать директорию с соответствующей поддиректорией i386 i486 i586 i686 noarch.
Не забудьте про пакеты RPM, необходимые для удовлетворения зависимостей.

Без изменения содержимого

Если вы хотите только добавить пакеты RPM, вы можете из директории где находятся необходимые пакеты сделать следующее.
makeSUSEdvd [-a /usr/src/packages/RPMS] [любой другой параметр]
На этом создание вашего персонального дистрибутива будет завершего. Во время установки , вы можете выбрать ПО и добавить Personal selection или любой RPM пакет из Personal selection.

Пожалуйста, прочтите COPYING, COPYRIGHT и LICENCE.TXT на ISO образах, которые вы только что создали, чтобы увидеть имеете ли вы право распространять их.

Изменяя содержимое

  • В этом случае, из директории с ISO образами, выполните makeSUSEdvd -i [-a /usr/src/packages/RPMS] [любой другой параметр]. Это создаст директорию CD_DIR, если не укажете другую. CD_DIR - директория где нужно производить изменения.
  • Далее вы можете удалить любой RPM пакет который хотите. Вы можете оставить те пакеты, которые хотите. RPM пакеты находятся в CD_ROM/suse
  • Далее вы можете отредактировать CD_DIR/control.xml Здесь находится более подробная информация об этом файле on this page. Многое здесь может быть изменено или испорчено, убедитесь что все протестировали, перед тем как начать распространять свой дистрибутив.
  • В соответствии с внесенными изменениями, вы можете изменить любой или все CD_DIR/suse/setup/desc/*sel файлы.
    • Особенное внимание уделите default*.sel Если вы добавии RPM пакеты, команда makeSUSEdvd создаст makeSUSEdvd.sel.
    • Если вы хотите, чтобы ПО устанавливалось по умолчанию, добавте его в default*
    • Добавляя ваш собственный *.sel файл, обратите внимание, что у него другой номер =Ord: в отличие от любого другого *.sel. Чем ниже номер, тем выше он будет в списке. Отрицательные числа работают.
    • Добавьте или удалите любой *.sel из /suse/setup/desc/selections так же как и любой *.sel.
  • Для дальнейшей персонификации, вы можете отредактировать следующие файлы. В большинстве файлов вам нужно удалить ссылку на SUSE и/или Novell и добавить свою собственную
/COPYRIGHT*		Разные языки.
/LICENCE.txt		Вставьте свою свобственную лицензию.
/README*
/LIESMICH*
/SuSEgo.ico		Удалите и добавьте свой собственный *.ico
/autorun.inf		Измените SuSEgo.ico на свой собственный.
/content		Измените VENDOR
			Измените RELNOTESURL на свой собственный RPM если необходимо.

/docu/RELEASE		Удалите ссылки на SUSE и Novell 

/boot/*/LIESMICH*
/boot/*/README*
/boot/*/loader/* 	Несколько файлов. В основном удаление ссылки на SUSE и изменение нескольких картинок JPG

/media.1/info.txt	Этот файл добавлен makeSUSEdvd.
                        Отредактируйте его makeSUSEdvd, или весь закомментируйте.
/media.1/licence.zip	Зайдите внутрь и замените некоторые или все лицензии на свою.
/media.1/media	

/suse/setup/README	
/suse/setup/LIESMISCH
/suse/setup/slide/*	Здесь вы можете действительно придать своему дистрибутиву индивидуальность.
                        Здесь находятся слайды, которые показываются во время установки.
  • Вот список некоторых бренд-символов Novell в OpenSuSE 10.2 Branding_Overview
  • Некоторые пакеты требуют чтобы перед установкой пользователь ознакомился с лицензионным соглашением End User Licence Agreement (EULA) или был предупрежден что эти пакеты выбраны для установки. Это необходимо, чтобы пользователь мог выбрать, хочет он их устанавливать или нет. Эти пакеты находятся в packages.$LANG и написаны на HTML. Например, посмотрим в /suse/setup/descr/packages.en
Лицензионное соглашение (EULA):
+Eul:
-Eul:

Предупреждение об установке:
+Ins:
-Ins:

Изменяем или добавляем модули YaST

Файл control.xml контролирует модули YaST, которые будут запущены во время установки и настройки вашей системы. Более того, эти модули могут быть изменены или полностью, с нуля, пересобраны. Модули YaST находятся в файле boot/arch/root на DVD (или первом CD). Вы можете извлеч корневую файловую систему во временную директорию командой:

mkdir oldroot
mount root oldroot -o loop 
mkdir newroot
rsync -av oldroot/* newroot/

а затем менять её. Модули YaST находятся в /usr/share/YaST2/. Вы можете добавлять или изменять их. Затем их необходимо скомпилировать :

ycpc -c module_path

и пересобрать корневую файловую систему командой:

umount oldroot
/sbin/mkfs.cramfs newroot/ root

Вы можете найти более подробную информацию по модулям YaST на странице http://en.opensuse.org/YaST.

Собираем дистрибутив

Первая копия CD_DIR будет в итоге удалена. Когда все ваши изменения сделаны для всех необходимых файлов и/или RPM пакетов, вы можете собрать новый ISO образ командой makeSUSEdvd -C , по итогам ее выполнения у вас будет готовый для записи ISO образ. Не забудьте его сперва протестировать, так что, если возможно, используйте перезаписываемый диск.

Если все впорядке, вы можете собрать свой итоговый ISO образ и начать использовать его.

Внимание: Пожалуйста, обращайте внимание на лицензии ПО. Особенно будьте осторожны с CD 6, где находятся проприетарные пакеты, которые имеют свои собственные лицензионные соглашения (не GPL).
Торговые марки защищаются законом и их использование без письменного соглашения владелица запрещено.