LINUX.ORG.RU
ФорумAdmin

Из чего делать кастомный дистрибутив?


0

0

Необходимо сделать кастомный дистрибутив для развёртывания приложения на куче потенциально разнородных компов (самосбор, не сервера, но и не совсем зоопарк). По назначению близко к платёжным терминалам. Требования:

1. Лёгкость заточки инсталлятора для unattended установки (начальная заливка по сети, перезаливка в полевых условиях с CD)
2. После установки нужна лёгкая возможность ручного задания нескольких уникальных параметров (типа настроек сети, имени хоста и заливки ключей/сертификатов с флэшки)
3. Очень полезной будет возможность не форматировать определённые разделы в инсталляторе (чтобы при перезаливке/дистапгрейде не портились данные)
4. Минимально необходимый набор пакетов (поменьше левых зависимостей и предустановленного софта)
5. Возможность безгеморройного вкорячивания нужных версий пакетов (как правило новее чем в дистрибутиве)
6. Лёгкость обновления всего этого дела по сети (включая собственные пакеты)
7. Хорошая поддержка дистрибутива в системах управления конфигурациями (Puppet, cfengine и т.п.)

Пункты 1 и 2 будут делаться малоподготовленным персоналом. У всего остального очень полезным свойством будет возможность быстрого обучения (для последующего делегирования части задач по поддержке). Т.е. если для поддержки потребуется знание какой-нибудь древней неинтуитивной штуки типа Makefile или m4, а также постоянное скриптование чего-либо на bash/perl или ещё чем-то подобном, то это минус.

Вопросы:
1. Какой дистрибутив выбрать
2. Какие инструменты использовать для обеспечения максимально простой и быстрой заливки на целевые машины
3. Интересно послушать про опыт поддержки таких инсталляций (организация процесса, цикл обновления/дистапгрейда, грабли, полезные приёмы и советы).

Debian? Повсеместно работает на встраиваемых решениях.
Для «заливки» можно делать образ системы. Т.е. забить вобще на какой-либо установщик.
Для каких-либо небольших настроек можно использовать самописные скрипты или гуишные утилиты, если есть иксы.

А все остальные требования, вроде, реализованы самим дистрибутивом (пакетным манагером) и никаких проблем быть не должно.

markevichus ★★★ ()
Ответ на: комментарий от markevichus

Что такое amico?

По дебиану... Каков путь наименьшего сопротивления для установки свежих версий отдельных программ (какие репозитории с какими можно смешивать)? Пакеты бэкпортить мне не очень понравилось: http://www.linux.org.ru/forum/admin/3636323, хотя конечно один случай не показатель. Ещё на мой ламерский взгляд в Debian очень много различных способов делать одно и тоже, плюс куча малопонятных вспомогательных утилит. Также где-то слышал мнение что rpm пакеты делать сильно проще.

Что лучше: preseed или FAI? Вот тут человек говорит что не всё гладко: http://www.hps.com/~tpg/notebook/autoinstall.php

cyberax ()
Ответ на: комментарий от animechaos

SuseStudio полгода назад пробовал, понравилось. Чем там принято автоматизировать установку?

Есть ли резервный вариант для соскакивания с иглы если SuseStudio вдруг станет платным или ещё какую бяку придумают?

cyberax ()

Кто что может сказать по CentOS, Fedora? Всё также kickstart или есть что-нибудь поновее?

cyberax ()
Ответ на: комментарий от cyberax

>SuseStudio полгода назад пробовал, понравилось. Чем там принято автоматизировать установку?
AutoYaST.

Есть ли резервный вариант для соскакивания с иглы если SuseStudio вдруг станет платным или ещё какую бяку придумают?

kiwi, входит в состав openSUSE. Позволяет собирать образы для загрузки c CD/DVD/USB/PXE, как Live, так и установочные. Собственно на нем, как я понимаю, и работает СусеСтудия.

unikoid ★★★ ()

Для Debian такое есть, но как оно ведет себя в реальности, я не знаю. Смотри Simple-CDD: http://wiki.debian.org/Simple-CDD.

И тут посомтри: http://wiki.debian.org/DebianCustomCD

Я наблюдал несколько независимых решений для Debian. Вероятно, этим список не исчерпывается.

Zubok ★★★★★ ()
Ответ на: комментарий от anTaRes

В Calculate есть официальный binhost с пакетами обновлений? Я себе слабо представляю полную перезаливку дистрибутива удалённо из-за необходимости проапдейтить пару пакетиков (да ещё всё это на не совсем стандартизированном наборе железа).

cyberax ()
Ответ на: комментарий от amorpher

> Slackware

Немного перепилить - http://alvex.com.ua/?ac=igr


О! Ваша разработка? Расскажите немного о цикле обновлений - как часто апдейтите, выкатываете ли критические обновления по GPRS или периодически перезаливаете систему полностью в оффлайне? Много ли сил вложено в обеспечение работы сетевых сервисов поверх неустойчивого линка?

Сколько человекочасов в месяц примерно отнимает процесс администрирования софтовой части (допустим нормированно на сотню автоматов)? Какое количество пакетов поддерживаете самостоятельно и как часто их приходится обновлять?

Ставите ли бесперебойники? Если нет, то применяете ли какие-то софтовые меры для снижения вероятности порчи системы при потерях питания и неосторожных выключениях?

Обслуживаете ли сами железо? Какая статистика отказов основных компонентов (питание, материнка, диск)?

Каковы по вашей оценке затраты времени на создание платформы с нуля (не учитывая полезную функциональность, т.е. считая только ОС и инфраструктуру по её поддержке).

И немного оффтопика - на чём сделан красивый интерфейс? Flash-ролик?

cyberax ()
Ответ на: комментарий от cyberax

Нет. Просто знал об этой конторе. Там есть мыло.

amorpher ★★★★★ ()

А я за федору. Кроме пункта 4, может быть. Особенного ужаса в зависимостях не видел, правда.

rusty_angel ()

CLS(Calculate Linux Scratch)
Можно LFS или Slax, но как-то CLS лучше, при том что это гента.

tia ()
Ответ на: комментарий от tia

Вообще я сам гентушник :) И там есть клёвая штука под названием quickstart которая довольно гибкая и читабельная (т.е. легко допиливается). Позволяет сетапить систему либо как stage4 (т.е. полностью собранную, с ядром и загрузчиком), либо с доустановкой чего надо из портов.

Проблема тут в количестве усилий при апгрейде отдельных пакетов (даже при наличии binhost) - не всё там так гладко как в бинарных дистрибутивах где мажорные версии как правило фиксированы.

cyberax ()
Ответ на: комментарий от cyberax

> Кто что может сказать по CentOS, Fedora? Всё также kickstart или есть что-нибудь поновее?

А что, kickstart уже устарел? В Fedora с этим всё нормально.

ximeric ()

FreeBSD 8.0-STABLE

> 1. Лёгкость заточки инсталлятора для unattended установки (начальная заливка по сети, перезаливка в полевых условиях с CD)

Система просто копируется («cp -a») на подготовленный носитель.

2. После установки нужна лёгкая возможность ручного задания нескольких уникальных параметров (типа настроек сети, имени хоста и заливки ключей/сертификатов с флэшки)


Без проблем. rc.local.

3. Очень полезной будет возможность не форматировать определённые разделы в инсталляторе (чтобы при перезаливке/дистапгрейде не портились данные)


gpart из командной строки.

4. Минимально необходимый набор пакетов (поменьше левых зависимостей и предустановленного софта)


~500 пакетов для мультимедийной станции это много?

5. Возможность безгеморройного вкорячивания нужных версий пакетов (как правило новее чем в дистрибутиве)


Написание собственных портов по мануалу.

6. Лёгкость обновления всего этого дела по сети (включая собственные пакеты)


Без проблем и неожиданностей.

7. Хорошая поддержка дистрибутива в системах управления конфигурациями (Puppet, cfengine и т.п.)


Текстовые конфиги. Что ещё лучше?

iZEN ★★★★★ ()

можно также попробывать arch + archboot его инсталлер (aif) - пачка bash scriptов; вполне себе читабельно. Поддерживает шаблоны установки.

guilder ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.