Компания Collabora представила debos, генератор системных образов на базе Debian
28 июня 2018 года
Компания Collabora представила проект debos, в рамках которого подготовлен инструментарий для создания произвольных системных образов для Debian и производных от него дистрибутивов. Код проекта написан на языке Go и распространяется под лицензией Apache 2.0.
В отличие от штатного debootstrap, debos позволяет не только загрузить и установить компоненты образа, но и провести кастомизацию, установить дополнительные файлы, запустить скрипты, внести изменения в настройки. Кроме того, в процессе работы debos не требует привилегий root для выполнения привилегированных операций в сформированном системном окружении. В debos применяется библиотека fakemachine, которая при помощи QEMU настраивает виртуальную машину, позволяющую выполнять привилегированные операции внутри образов и создавать образы для любых архитектур, поддерживаемых в QEMU.
Debos не привязывается к каким-то конкретным областям применения, таким как создание образов контейнеров, виртуальных машин или загрузочных сборок, а предоставляет универсальный, понятный и гибкий механизм для кастомизации. Начинка образов определяется в файлах конфигурации, оформленных в формате YAML. В файле конфигурации определяется набор не зависящих друг от друга действий. Среди предлагаемых действий:
- apt: установка пакетов и связанных с ними зависимостей при помощи команды apt;
- debootstrap: подготовка rootfs с использованием debootstrap;
- download: загрузка файла по сети;
- filesystem-deploy: развёртывание корневой ФС в уже ранее созданном образе;
- image-partition: создание файла с образом с разбивкой на разделы и форматированием;
- ostree-commit: создание коммита OSTree из rootfs;
- ostree-deploy: развёртывание ветки OSTree в заданный образ;
- overlay: рекурсивное копирование каталогов или файлов в целевую ФС;
- pack: создание сжатого архива целевой ФС;
- raw: прямая запись файла в образ по заданному смещению;
- run: выполнение команды или скрипта в контексте создаваемой ФС;
- unpack: распаковка файлов из архиве в создаваемую ФС.
Например, для создания образа для архитектуры ARM64, установки в него определённого набора пакетов, изменения имени хоста в /etc/hostname и упаковки образа в сжатый архив, можно запустить команду "debos example.yaml" со следующими настройками (более подробный пример
Источники[править]
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.