Компанія Microsoft опублікувала Linux-дистрибутив CBL-Mariner 2.0

Компанія Microsoft опублікувала перше стабільне оновлення нової гілки дистрибутива CBL-Mariner 2.0 (Common Base Linux Mariner), який розвивається як універсальна базова платформа для Linux-оточень, що використовуються в хмарній інфраструктурі, edge-системах та різних сервісах Microsoft. Проект націлений на уніфікацію застосовуваних у Microsoft Linux-рішень та спрощення підтримки Linux-систем різного призначення в актуальному стані. Напрацювання проекту розповсюджуються під ліцензією MIT. Складання пакетів формуються для архітектур aarch64 та x86_64.

Новий випуск відзначається значним оновленням версій програм. У тому числі оновлено версії ядра Linux 5.15 (у гілці 1.0 застосовувалося ядро ​​5.4), systemd 250, glibc 2.35, GCC 11.2, clang 12, Python 3.9, ruby ​​3.1.2, rpm 4.17, rpm 6.1. 5.34. До складу базового репозиторію включені компоненти для побудови графічного інтерфейсу, такі як Wayland 2022.1, Mesa 1.20, GTK 21.0 та X.Org Server 3.24, які раніше постачалися в окремій репозиторії coreui. Додані збирання ядра з патчами PREEMPT_RT для застосування в системах, що працюють у режимі реального часу.

Дистрибутив CBL-Mariner надає невеликий типовий набір основних пакетів, що є універсальною основою для створення начинки контейнерів, хост-оточень та сервісів, що запускаються в хмарних інфраструктурах та на edge-пристроях. Більш складні та спеціалізовані рішення можуть створюватись шляхом додавання додаткових пакетів поверх CBL-Mariner, але основа для всіх подібних систем залишається незмінною, що спрощує супровід та підготовку оновлень. Наприклад, CBL-Mariner застосовується як основа міні-дистрибутива WSLg, в якому надаються компоненти графічного стека для організації запуску GUI-додатків Linux в оточеннях на базі підсистеми WSL2 (Windows Subsystem for Linux). Розширена функціональність WSLg реалізується через включення додаткових пакетів з композитним сервером Weston, XWayland, PulseAudio і FreeRDP.

Система складання CBL-Mariner дозволяє генерувати як окремі RPM-пакети на основі SPEC-файлів та вихідних текстів, так і монолітні системні образи, що формуються за допомогою інструментарію rpm-ostree та оновлюються атомарно без розбивки на окремі пакети. Відповідно, підтримується дві моделі доставки оновлень: через оновлення окремих пакетів та через перебудову та оновлення всього системного образу. Доступний репозиторій, що включає близько 3000 вже зібраних пакетів RPM, який можна використовувати для компонування власних образів на основі файлу конфігурації.

Дистрибутив включає тільки необхідні компоненти і оптимізований для мінімального споживання пам'яті і дискового простору, а також для високої швидкості завантаження. Дистрибутив також примітний включенням різних додаткових механізмів підвищення захисту. У проекті застосовується підхід «максимальна безпека за умовчанням». Надається можливість фільтрації системних викликів за допомогою механізму seccomp, шифрування дискових розділів, верифікації пакетів цифрового підпису.

Активовані режими рандомізації адресного простору, що підтримуються в ядрі Linux, а також механізми захисту від атак, пов'язаних із символічними посиланнями, mmap, /dev/mem і /dev/kmem. Для областей пам'яті, в яких розміщуються сегменти з даними ядра та модулів, встановлений режим лише для читання та заборонено виконання коду. Опціонально доступна можливість заборони завантаження модулів ядра після ініціалізації системи. Для фільтрації мережних пакетів задіяний інструментарій iptables. На етапі складання за замовчуванням включені режими захисту від переповнення стека, переповнення буфера та проблем з форматуванням рядків (_FORTIFY_SOURCE, -fstack-protector, -Wformat-security, relro).

Для управління сервісами та завантаженням застосовується системний менеджер systemd. Для керування пакетами постачаються пакетні менеджери RPM та DNF. SSH-сервер за замовчуванням не вмикається. Для встановлення дистрибутива надається інсталятор, який може працювати як у текстовому, так і у графічному режимах. В інсталяторі надається можливість встановлення з повним або базовим набором пакетів, пропонується інтерфейс для вибору дискового розділу, вибору імені хоста та створення користувачів.

Джерело: opennet.ru

Додати коментар або відгук