Společnost Canonical představila vydání Ubuntu Core 26, kompaktní varianty distribuce Ubuntu, přizpůsobené pro použití na zařízeních internetu věcí (IoT), v kontejnerech, spotřebitelském a průmyslovém vybavení. Ubuntu Core se dodává ve formě nedělitelného monolitického obrazu základního systému, ve kterém se nepoužívá rozdělení na jednotlivé deb balíčky. Obrazy Ubuntu Core 26, jejichž obsah je synchronizován s balíčkovou základnou Ubuntu 26.04, jsou připraveny pro systémy x86_64 a ARM64. Doba podpory vydání bude 15 let.
Ubuntu Core slouží jako základ pro spuštění dalších komponent a aplikací, které jsou vytvářeny jako samostatné nadstavby ve formátu snap. Komponenty Ubuntu Core, včetně základního systému, jádra Linux a systémových nadstaveb, se také dodávají ve formátu snap a spravují nástrojem snapd. Technologie Snappy umožňuje vytvořit obraz systému jako celek, bez rozdělení do jednotlivých balíčků. Místo postupné aktualizace na úrovni jednotlivých deb balíčků se v Ubuntu Core používá mechanismus atomového aktualizování snap balíčků a základního systému, obdobně jako ve Fedora Atomic, ChromeOS, Endless a openSUSE Leap Micro. Při aktualizaci základního prostředí a snap balíčků je možné vrátit stav na předchozí verzi, pokud nastanou problémy po aktualizaci.
Pro zajištění bezpečnosti je každý komponent systému ověřován digitálním podpisem, což zabraňuje neoprávněným úpravám nebo instalaci neověřených snap balíčků. Komponenty dodávané ve formátu Snap jsou izolovány pomocí AppArmor a Seccomp, což vytváří další ochrannou bariéru v případě kompromitace jednotlivých aplikací. Základní systém zahrnuje pouze minimální sadu potřebných aplikací, což nejen snížilo velikost systémového prostředí, ale také pozitivně ovlivnilo bezpečnost snížením možných vektorů pro útoky.
Základní souborový systém je připojen v režimu pouze pro čtení. Existuje možnost využití šifrování dat na zařízení pomocí TPM. Aktualizace jsou pravidelně vydávány, dodávány v režimu OTA (over-the-air) a jsou synchronizovány s verzí Ubuntu 26.04. Aby se minimalizoval provoz, aktualizace jsou dodávány ve zkomprimované podobě a obsahují pouze změny oproti předchozí aktualizaci (delta-aktualizace). Automatizace instalace aktualizací řeší problémy se zabezpečením systému při použití na zabudovaných zařízeních.
Díky logickému oddělení základního systému od aplikací se o udržení kódové základny Ubuntu Core v aktuálním stavu starají vývojáři Ubuntu, zatímco o aktuálnost dalších aplikací se starají vývojáři aplikací. Tento přístup umožňuje snížit náklady na údržbu produktů, jejichž software je založen na Ubuntu Core, protože jejich výrobci se nemusí zabývat vydáváním a doručováním systémových aktualizací a mohou se soustředit pouze na své specifické komponenty.
Hlavní novinky:
- Byl nasazen nový systém sestavování založený na nástroji Chisel, který umožňuje rozdělovat a zkracovat balíčky Debian za účelem dodávání pouze nejpotřebnějších souborů. Chisel umožňuje manipulovat ne s celými balíčky, ale s ‚slices‘ (podmnožinami balíčků) - sadami souborů vytvářenými na základě obsahu a metadat balíčku. Každý slice může mít vlastní obsah a sadu závislostí vázanou na jiné slices. Každý soubor v souborovém systému Ubuntu Core je nyní vázán na slice a balíček se zdrojovým kódem, což zlepšuje kontrolu integrity a sledování zranitelností. Použití nového systému sestavování umožnilo snížit velikost základního systémového obrazu o 7%.
- Byl zkrácen čas instalace aktualizací díky zavedení formátu snap-delta pro snížení velikosti stahovaných dat pro většinu snap-baliků. Například velikost souborů s aktualizací základních snap balíků se zmenšila z 16 na 1.5 MB.
- Byly splněny požadavky evropského zákona CRA (Cyber Resilience Act), který zavádí právní odpovědnost za nedodržení bezpečnostních požadavků.
- Byla přidána možnost aplikace technologie Livepatch pro provádění oprav v běžícím jádře Linuxu bez restartování a bez zastavení aplikací.
- Byla zajištěna integrace s nástrojem COS (Canonical Observability Stack), založeným na orchestraci Juju a platformě Kubernetes. Ubuntu Core nyní může předat logy a metriky do centralizovaných systémů monitorování založených na Grafaně, Lokim a Prometheovi.
- Byla přidána podpora komponentů umožňujících vývojářům snap balíčků distribuovat další velké nebo volitelné zdroje, jako jsou ladicí informace, překladové soubory a volitelné ovladače, odděleně od hlavního snap balíčku pro zmenšení velikosti základní instalace. Komponenta je vytvářena jako obraz ve formátu squashfs, montovaný do prostředí snap balíčku.
- V Snapd REST API byla zajištěna kompatibilita se specifikací OpenAPI.
- Na displejový server Ubuntu Frame, který umožňuje vytvářet vestavěná grafická prostředí (internetové kiosky, terminály pro samoobsluhu, informační stojany, digitální vývěsní štíty), byla přidána možnost umístit uživatelské rozhraní několika aplikací na jednom screenu. Byla přidána možnost využití GPU akcelerace v aplikacích.
- Byla přidána systémová nastavení interface.allow-auto-connection pro definování pravidel automatického připojení rozhraní.
- Byla přidána podpora mechanismu Confdb pro centralizované definování nastavení, která nejsou vázána na konkrétní snap balíčky a zařízení.
- Z základního souboru snap balíčků byl vyloučen interpreter Python, který nyní musí být instalován jako samostatný plugin.
Zdroj: opennet.ru
