Společnost Canonical vydala verzi Ubuntu Core 22, kompaktní variantu distribuce Ubuntu přizpůsobenou pro použití na zařízeních internetu věcí (IoT), v kontejnerech, spotřební a průmyslové technice. Ubuntu Core je dodáváno ve formě nedělitelného monolitického obrazu základního systému, kde není použito členění na jednotlivé deb balíčky. Obrazy Ubuntu Core 22, jejichž složení je synchronizováno s balíčkovou základnou Ubuntu 22.04, jsou připraveny pro systémy x86_64, ARMv7 a ARMv8. Doba podpory vydání činí 10 let.
Ubuntu Core slouží jako základ pro spouštění dalších komponent a aplikací, které jsou formovány 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, jsou rovněž dodávány ve formátu snap a spravovány nástrojem snapd. Technologie Snappy umožňuje vytvořit obraz systému jako celek, bez členění na jednotlivé balíčky.
Místo postupné aktualizace na úrovni jednotlivých deb balíčků využívá Ubuntu Core mechanismus atomických aktualizací snap balíčků a základního systému, obdobně jako Atomic, ChromeOS, Endless, CoreOS a Fedora Silverblue. Při aktualizaci základního prostředí a snap balíčků je možné vrátit stav na předchozí verzi v případě problémů, které se po aktualizaci objeví. V současnosti je v katalogu SnapCraft k dispozici více než 4,5 tisíce snap balíčků.
Pro zajištění bezpečnosti je každý komponent systému ověřován digitálním podpisem, což chrání distribuci před skrytými modifikacemi nebo instalací neověřených snap balíčků. Komponenty dodávané ve formátu Span jsou izolovány pomocí AppArmor a Seccomp, což vytváří další ochrannou bariéru pro systém v případě kompromitace jednotlivých aplikací. Základní systém zahrnuje pouze minimální sadu nezbytných aplikací, což nejenže umožnilo snížit velikost systémového prostředí, ale také kladně 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 úložišti pomocí TPM. Aktualizace jsou pravidelně uvolňovány, doručovány prostřednictvím OTA (over-the-air) a synchronizovány s verzí Ubuntu 22.04. Aby se minimalizoval provoz, aktualizace přicházejí ve zkomprimované podobě a zahrnují pouze změny oproti předchozí aktualizaci (delta-aktualizace). Automatizace instalace aktualizací řeší problémy s udržováním bezpečnosti systému při použití na vestavěný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:
- Byla navržena koncepce ověřených sad balíčků (Validation sets), která umožňuje určit sadu snap-baliků a jejich verzí, které mohou být instalovány a aktualizovány pouze společně. Ověřené sady mohou být použity pro implementaci omezení, které umožňují instalaci pouze vybraných snap-balíků, distribuci vlastních dodatečně testovaných a ověřených balíčků, nebo pro zjednodušení správy závislostí.
- Byly přidány nástroje pro aktualizaci prostředí Ubuntu Core 20 na verzi 22 bez přeinstalace.
- Byla implementována možnost obnovení konfigurace do základního stavu (factory reset).
- Byla poskytnuta podpora skupin kvót pro omezení zdrojů CPU a paměti vázaných na určité skupiny snap služeb.
- Byla přidána podpora nástroje MicroK8s, který nabízí zjednodušenou variantu platformy pro orchestraci kontejnerů Kubernetes.
- Byla navržena verze balíčku s jádrem Linux, zahrnující patche PREEMPT_RT a zaměřená na použití v systémech pracujících v reálném čase.
- Byla přidána podpora nástroje MAAS (Metal-as-a-Service) pro rychlé nasazení konfigurací na více systémech.
- Byla přidána podpora cloud-init pro konfiguraci systému během spouštění.
Zdroj: opennet.ru
