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

Материал из ALT Linux Wiki
Перейти к: навигация, поиск
(Distribute)
 
(не показано 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, готовые для записи.