|
Компания Canonical представила релиз Ubuntu Core 26, компактного варианта дистрибутива Ubuntu, адаптированного для применения на устройствах интернета вещей (IoT), в контейнерах, потребительском и промышленном оборудовании. Ubuntu Core поставляется в форме неделимого монолитного образа базовой системы, в котором не применяется разбивка на отдельные deb-пакеты. Образы Ubuntu Core 26, состав которых синхронизирован с пакетной базой Ubuntu 26.04, подготовлены для систем x86_64 и ARM64. Время сопровождения выпуска составит 15 лет.
Ubuntu Core служит основой для запуска дополнительных компонентов и приложений, которые оформляются в виде самодостаточных надстроек в формате snap. Компоненты Ubuntu Core, включая базовую систему, ядро Linux и системные надстройки, также поставляются в формате snap и управляются инструментарием snapd. Технология Snappy даёт возможность сформировать образ системы как единое целое, без разбиения на отдельные пакеты. Вместо поэтапного обновления на уровне отдельных deb-пакетов в Ubuntu Core применяется механизм атомарного обновления snap-пакетов и базовой системы, по аналогии с Fedora Atomic, ChromeOS, Endless и openSUSE Leap Micro. При обновлении базового окружения и snap-пакетов имеется возможность отката состояния до прошлой версии, в случае проблем, выявленных после обновления.
Для обеспечения безопасности каждый компонент системы верифицируется по цифровой подписи, что позволяет защитить дистрибутив от внесения скрытых модификаций или установки непроверенных snap-пакетов. Поставляемые в формате Snap компоненты изолируются при помощи AppArmor и Seccomp, что создаёт дополнительный рубеж для защиты системы в случае компрометации отдельных приложений. Базовая система включает только минимальный набор необходимых приложений, что не только позволило уменьшить размер системного окружения, но и положительно сказалось на безопасности за счёт уменьшения возможных векторов для атак.
Базовая файловая система монтируется в режиме только для чтения. Имеется возможность использования шифрования данных на накопителе с использованием TPM. Обновления выпускаются регулярно, доставляются в режиме ОТА (over-the-air) и синхронизированы с составом Ubuntu 26.04. Для минимизации трафика обновления поставляются в сжатом виде и включают только изменения, относительно прошлого обновления (delta-обновления). Автоматизация установки обновлений решает проблемы с поддержанием безопасности системы при использовании на встраиваемых устройствах.
Благодаря логическому отделению базовой системы от приложений, поддержанием кодовой базы Ubuntu Core в актуальном виде занимаются разработчики Ubuntu, а об актуальности дополнительных приложений заботятся разработчики приложений. Подобный подход позволяет снизить затраты на сопровождение продуктов, программное окружение которых построено на основе Ubuntu Core, так как их производителям не требуется заниматься выпуском и доставкой системных обновлений и достаточно сосредоточить внимание только на своих специфичных компонентах.
Основные новшества:
- Задействована новая система сборки на базе инструментария Chisel, позволяющего разделять и урезать Debian-пакеты с целью поставки только наиболее необходимых файлов. Chisel даёт возможность манипулировать не целыми пакетами, а слайсами (подмножеством пакетов) - наборами файлов, формируемых на основе содержимого и метаданных пакета. Каждый слайс может иметь своё содержимое и свой набор зависимостей, привязанный к другим слайсам. Каждый файл в файловой системе Ubuntu Core теперь привязан к слайсу и пакету с исходным кодом, что улучшает проверку целостности и отслеживания уязвимостей. Применение новой системы сборки позволило уменьшить размер базового системного образа на 7%.
- Сокращено время установки обновлений за счёт применения формата snap-delta для уменьшения размера загружаемых данных для большинства snap-пакетов. Например, размер файлов с обновлением базовых snap-пакетов сократился с 16 до 1.5 МБ.
- Обеспечено выполнение требований европейского закона CRA (Cyber Resilience Act), который вводит юридическую ответственность за несоблюдение требований безопасности.
- Добавлена возможность применения технологии Livepatch для внесения исправлений в работающее ядро Linux без перезагрузки и без остановки работы приложений.
- Обеспечена интеграция с инструментарием COS (Canonical Observability Stack), основанным на движке оркестровки Juju и платформе Kubernetes. Ubuntu Core теперь может передавать логи и метрики в централизованные системы мониторинга на базе Grafana, Loki и Prometheus.
- Добавлена поддержка компонентов, позволяющих разработчикам snap-пакетов распространять дополнительные крупные или не обязательные ресурсы, такие как отладочные данные, файлы с переводами и необязательные драйверы, отдельного от основного snap-пакета для сокращения размера базовой установки. Компонент формируется как образ в формате squashfs, монтируемый в окружение snap-пакета.
- В Snapd REST API обеспечена совместимость со спецификацией OpenAPI.
- В дисплейный сервер Ubuntu Frame, позволяющий создавать встраиваемые графические окружения (интернет-киоски, терминалы самообслуживания, информационные стенды, цифровые вывески), добавлена возможность размещения интерфейса нескольких приложений на одном экране. Добавлена возможность использования в приложениях GPU-ускорения.
- Добавлена системная настройка interface.allow-auto-connection для определения правил автоматического подключения интерфейсов.
- Добавлена поддержка механизма Confdb для централизованного определения настроек, не привязанных к конкретным snap-пакетам и устройствам.
- Из базового набора snap-пакетов исключён интерпретатор Python, который теперь следует устанавливать в форме отдельного плагина.
|