Tools/Distribute: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
 
(не показано 11 промежуточных версий 1 участника)
Строка 1: Строка 1:
== Сборка ISO-образов репозитория с помощью Distribute ==
= Сборка ISO-образов репозитория с помощью Distribute =
==== Быстрый вход в курс дела. ====
 
=== Введение ===
Если вам надо иметь срез бренча, записанный на DVD или на CD (далее - болванки), то вам сюда. Далее я опишу на примере того, как я записываю бренч p5 на DVD.
 
=== Быстрый вход в курс дела. ===
Если вы умеете сами разбираться в документации и в конфигах пакетов вам достаточно прочитать следующий алгоритм:
Если вы умеете сами разбираться в документации и в конфигах пакетов вам достаточно прочитать следующий алгоритм:


Строка 9: Строка 13:
* Третье, изучить документацию, которая есть в пакете (/usr/share/doc/distribute...) и конфигурационный файл, который идёт в пакете по умолчанию (/usr/share/distribute/defaults.conf).
* Третье, изучить документацию, которая есть в пакете (/usr/share/doc/distribute...) и конфигурационный файл, который идёт в пакете по умолчанию (/usr/share/distribute/defaults.conf).


==== Медленный вход в курс дела. ====
=== Медленный вход в курс дела. ===
Для остальных опишу чуть поподробнее.
Для остальных опишу чуть поподробнее.
==== Введение ====
Если вам надо иметь срез бренча, записанный на DVD или на CD (далее - болванки), то вам сюда. Далее я опишу на примере того, как я записываю бренч p5 на DVD.


==== Первый шаг ====
==== Первый шаг ====
Как уже написано выше первым шаго устанавливаем пакет distribute. Он есть во всех бренчах.
Как уже написано выше первым шагом устанавливаем пакет distribute. Он есть во всех бренчах.


Выполняем команду от root.
Выполняем команду от root.
Строка 26: Строка 27:


==== Третий шаг ====
==== Третий шаг ====
После изучения документации пакета distribute, я создал по аналогии конфигурационный файл задания для записи бренча p5 (~/.etc/distribute/tasks/Branch-p5) , следующего содержания:


''<nowiki># Configuration for ./distribute.</nowiki>''
1. После изучения документации пакета distribute, я создал по аналогии конфигурационный файл задания для записи бренча p5 (~/.etc/distribute/tasks/Branch-p5) , следующего содержания:


''<nowiki># Размер образа</nowiki>''
''<nowiki># Configuration for ./distribute.</nowiki>''
''
''<nowiki># Размер образа</nowiki>''
''CDVOLUME=4700000000''
''
''<nowiki># Параметры имени образа</nowiki>''
''PREFIX=ALTLinux''
''SUFFIX="p5"-$(date +%Y%m%d)''
''
''<nowiki># архитектуры, которые войдут в образ</nowiki>''
''ARCH=(i586 noarch)''
''
''<nowiki># </nowiki>Открывающая кавычка''
''TYPE_N_LOCALMIRROR_TABLE="''
''
''<nowiki># размещение файлов с заданными архитектурами</nowiki>''
''noarch/RPMS "/media/Arhiv/Branch-p5/files/noarch/RPMS"''
''i586/RPMS "/media/Arhiv/Branch-p5/files/i586/RPMS"''
''
''<nowiki># </nowiki>Закрывающая кавычка''
''"''


''CDVOLUME=4700000000''


''<nowiki># Параметры имени образа</nowiki>''


''PREFIX=ALTLinux''
2. Создаю скрипт create-iso-b5 , который буду запускать для создания образов, следующего содержания:


''SUFFIX="p5"-$(date +%Y%m%d)''
<nowiki>#!/bin/bash</nowiki>
''
export P_LIBDIR="~/.usr/share"
''
distribute Branch-p5 --clear
''
distribute Branch-p5 --rmiso
''
distribute Branch-p5 --rm-base p5
''
distribute Branch-p5 --GEN-TASKCONF
''
distribute Branch-p5 --fix-base p5
''
distribute Branch-p5 --split-full p5
''
distribute Branch-p5 --make-plain-index p5
''
distribute Branch-p5 --index p5
''
distribute Branch-p5 —mkiso


''<nowiki># архитектуры, которые войдут в образ</nowiki>''


''ARCH=(i586 noarch)''
Содержимое его я расшифровывать не буду — кому надо, смотрите выдачу
'''distribute —help'''


''<nowiki># </nowiki>Открывающая кавычка''
Скажу только, что в первой его части удаляются результаты предыдущей работы скрипта, а потом запускается построение образа заново. При желании, можно его модифицировать так, что-бы создавались не все ISO образы заново, а создавались только образы с разницей между имеющимися образами и текущим срезом. Для этого надо изучить документации к пакету distributre (/usr/share/doc/distribute...) .


''TYPE_N_LOCALMIRROR_TABLE="''
3. Создаю инфраструктуру сборки.Монтирую внешний диск, например так:


''<nowiki># размещение файлов с заданными архитектурами</nowiki>''
'''pmount-hal /dev/sdb1'''


''noarch/RPMS "/media/Arhiv/Branch-p5/files/noarch/RPMS"''
В ~/var/distribute, создаю символическую ссылку с именем ISOs на то место, куда мне надо положить образы (не забывая там дать права пользователю на запись).


''i586/RPMS "/media/Arhiv/Branch-p5/files/i586/RPMS"''
'''mkdir /media/Arhiv/Isos-p5'''


''<nowiki># </nowiki>Закрывающая кавычка''
'''chown -R user: /media/Arhiv/Isos-p5'''


''"''
'''ln -s /media/A rhiv/Isos-p5 ~/var/distribute/ISOs'''


4. Запускаю скрипт create-iso-b5.
И через некоторое время, ответив на вопрос команд скрипта у меня в каталоге
/media/Arhiv/Isos-p5 лежат DVD образы бренча p5, готовые для записи.


[[Категория:HOWTO]]
{{Category navigation|title=HOWTO|category=HOWTO|sortkey={{SUBPAGENAME}}}}

Текущая версия от 12:24, 19 июля 2015

Сборка ISO-образов репозитория с помощью Distribute

Введение

Если вам надо иметь срез бренча, записанный на DVD или на CD (далее - болванки), то вам сюда. Далее я опишу на примере того, как я записываю бренч p5 на DVD.

Быстрый вход в курс дела.

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

  • Первое, что надо сделать, это установить пакет distribute.
  • Второе, это надо иметь срез бренча (частный случай - срез Сизифа), который вы хотите записать на CD/DVD.
  • Третье, изучить документацию, которая есть в пакете (/usr/share/doc/distribute...) и конфигурационный файл, который идёт в пакете по умолчанию (/usr/share/distribute/defaults.conf).

Медленный вход в курс дела.

Для остальных опишу чуть поподробнее.

Первый шаг

Как уже написано выше первым шагом устанавливаем пакет distribute. Он есть во всех бренчах.

Выполняем команду от root.

apt-get install distribute

Второй шаг

Второе необходимое условие — это наличие полного среза бренча, который вы хотите записать на болванки. Для этого я предварительно скачал branch p5, и положил его на внешний USB накопитель, который монтируется у меня на точку монтирования /media/Arhiv. На нём у меня файловая система ext3 (для того, чтобы не было проблем с символическими ссылками и т. п.). В каталоге /media/Arhiv/Branch-p5/ лежит сам бренч. Пользователь, который будет создавать образы имеет доступ ко всем этим файлам. Там-же на внешнем диске у меня расположен каталог, куда я буду записывать образы (записать их на болванки могу в любое время потом, когда мне они потребуются).

Третий шаг

1. После изучения документации пакета distribute, я создал по аналогии конфигурационный файл задания для записи бренча p5 (~/.etc/distribute/tasks/Branch-p5) , следующего содержания:

# Configuration for ./distribute.

# Размер образа
CDVOLUME=4700000000

# Параметры имени образа
PREFIX=ALTLinux
SUFFIX="p5"-$(date +%Y%m%d)
 
# архитектуры, которые войдут в образ
ARCH=(i586 noarch)

# Открывающая кавычка
TYPE_N_LOCALMIRROR_TABLE="

# размещение файлов с заданными архитектурами
noarch/RPMS "/media/Arhiv/Branch-p5/files/noarch/RPMS"
i586/RPMS "/media/Arhiv/Branch-p5/files/i586/RPMS"

# Закрывающая кавычка
"


2. Создаю скрипт create-iso-b5 , который буду запускать для создания образов, следующего содержания:

#!/bin/bash

export P_LIBDIR="~/.usr/share"

distribute Branch-p5 --clear

distribute Branch-p5 --rmiso

distribute Branch-p5 --rm-base p5

distribute Branch-p5 --GEN-TASKCONF

distribute Branch-p5 --fix-base p5

distribute Branch-p5 --split-full p5

distribute Branch-p5 --make-plain-index p5 

distribute Branch-p5 --index p5

distribute Branch-p5 —mkiso


Содержимое его я расшифровывать не буду — кому надо, смотрите выдачу

distribute —help

Скажу только, что в первой его части удаляются результаты предыдущей работы скрипта, а потом запускается построение образа заново. При желании, можно его модифицировать так, что-бы создавались не все ISO образы заново, а создавались только образы с разницей между имеющимися образами и текущим срезом. Для этого надо изучить документации к пакету distributre (/usr/share/doc/distribute...) .

3. Создаю инфраструктуру сборки.Монтирую внешний диск, например так:

pmount-hal /dev/sdb1

В ~/var/distribute, создаю символическую ссылку с именем ISOs на то место, куда мне надо положить образы (не забывая там дать права пользователю на запись).

mkdir /media/Arhiv/Isos-p5

chown -R user: /media/Arhiv/Isos-p5

ln -s /media/A rhiv/Isos-p5 ~/var/distribute/ISOs

4. Запускаю скрипт create-iso-b5.

И через некоторое время, ответив на вопрос команд скрипта у меня в каталоге 

/media/Arhiv/Isos-p5 лежат DVD образы бренча p5, готовые для записи.