Das Unternehmen Canonical hat die Veröffentlichung von Ubuntu Core 26 vorgestellt, einer kompakten Version der Ubuntu-Distribution, die für den Einsatz in Internet-of-Things-Geräten (IoT), Containern sowie im Verbraucher- und Industriebereich konzipiert ist. Ubuntu Core wird als unteilbares, monolithisches Abbild des Basissystems bereitgestellt, ohne Aufteilung in separate deb-Pakete. Die Abbilder von Ubuntu Core 26, die mit der Paketbasis von Ubuntu 26.04 synchronisiert sind, wurden für x86_64 und ARM64 Systeme vorbereitet. Die Unterstützungsdauer für diese Version beträgt 15 Jahre.
Ubuntu Core bildet die Grundlage für den Betrieb zusätzlicher Komponenten und Anwendungen, die als eigenständige Erweiterungen im Snap-Format bereitgestellt werden. Die Komponenten von Ubuntu Core, einschließlich des Basissystems, des Linux-Kernels und der Systemerweiterungen, werden ebenfalls im Snap-Format geliefert und mit dem Snapd-Toolkit verwaltet. Die Snappy-Technologie ermöglicht es, ein System-Image als Einheit zu erstellen, ohne es in separate Pakete zu unterteilen. Anstelle der schrittweisen Aktualisierung einzelner Deb-Pakete kommt bei Ubuntu Core ein atomarer Aktualisierungsmechanismus für Snap-Pakete und das Basissystem zum Einsatz, ähnlich wie bei Fedora Atomic, ChromeOS, Endless und openSUSE Leap Micro. Bei der Aktualisierung der Basisumgebung und der Snap-Pakete besteht die Möglichkeit, den Zustand auf eine frühere Version zurückzusetzen, falls nach der Aktualisierung Probleme auftreten.
Um die Sicherheit zu gewährleisten, wird jede Komponente des Systems durch digitale Signaturen verifiziert, wodurch das Distributionspaket vor versteckten Änderungen oder der Installation nicht geprüfter Snap-Pakete geschützt wird. Die im Snap-Format gelieferten Komponenten werden mithilfe von AppArmor und Seccomp isoliert, was einen zusätzlichen Schutzbereich für das System im Falle einer Kompromittierung einzelner Anwendungen schafft. Das Basissystem umfasst nur die minimal erforderlichen Anwendungen, was nicht nur die Größe der Systemumgebung reduziert, sondern auch die Sicherheit verbessert, indem die potenziellen Angriffsvektoren verringert werden.
Das grundlegende Dateisystem wird im Nur-Lese-Modus eingebunden. Es besteht die Möglichkeit, Daten auf dem Speichermedium mithilfe von TPM zu verschlüsseln. Updates werden regelmäßig veröffentlicht, über OTA (over-the-air) bereitgestellt und sind mit der Zusammenstellung von Ubuntu 26.04 synchronisiert. Um den Datenverkehr zu minimieren, werden die Aktualisierungen komprimiert und enthalten nur Änderungen im Vergleich zum vorherigen Update (Delta-Updates). Die Automatisierung der Installation von Updates löst Probleme bei der Aufrechterhaltung der Sicherheit von Systemen, die auf eingebetteten Geräten verwendet werden.
Durch die logische Trennung des Basissystems von Anwendungen kümmern sich die Entwickler von Ubuntu um die Aktualität des Ubuntu Core Codes, während die Aktualität zusätzlicher Anwendungen von den Anwendungsentwicklern betreut wird. Dieser Ansatz reduziert die Wartungskosten für Produkte, deren Softwareumgebungen auf Ubuntu Core basieren, da die Hersteller sich nicht um die Veröffentlichung und Bereitstellung systemischer Updates kümmern müssen und sich lediglich auf ihre spezifischen Komponenten konzentrieren können.
Hauptneuheiten:
- Ein neues Build-System basierend auf dem Chisel-Toolset wurde implementiert, das es ermöglicht, Debian-Pakete zu teilen und zu beschneiden, um nur die lebensnotwendigen Dateien bereitzustellen. Chisel ermöglicht die Manipulation nicht kompletter Pakete, sondern von Slices (Teilmengen von Paketen) – Gruppen von Dateien, die auf dem Inhalt und den Metadaten eines Pakets basieren. Jedes Slice kann seinen eigenen Inhalt und seine eigenen Abhängigkeiten haben, die an andere Slices gebunden sind. Jede Datei im Dateisystem von Ubuntu Core ist jetzt einem Slice und dem zugehörigen Quellpaket zugeordnet, was die Integritätsprüfung und das Verfolgen von Sicherheitsanfälligkeiten verbessert. Die Einführung des neuen Build-Systems hat die Größe des Basis-Systemabbilds um 7 % reduziert.
- Die Installationszeit für Updates wurde durch die Verwendung des snap-delta-Formats verkürzt, das die Größe der heruntergeladenen Daten für die meisten Snap-Pakete reduziert. Zum Beispiel hat sich die Größe der Dateien für Updates der grundlegenden Snap-Pakete von 16 auf 1,5 MB verringert.
- Die Anforderungen des europäischen Gesetzes CRA (Cyber Resilience Act) werden eingehalten, das eine rechtliche Verantwortung für die Nichteinhaltung von Sicherheitsanforderungen einführt.
- Die Möglichkeit, die Livepatch-Technologie zur Anwendung von Korrekturen am laufenden Linux-Kernel ohne Neustart und ohne Unterbrechung der Anwendungsbetrieb zu nutzen, wurde hinzugefügt.
- Die Integration mit dem COS (Canonical Observability Stack) wurde sichergestellt, der auf der Orchestrierungsengine Juju und der Kubernetes-Plattform basiert. Ubuntu Core kann jetzt Protokolle und Metriken an zentrale Überwachungssysteme auf Basis von Grafana, Loki und Prometheus übertragen.
- Die Unterstützung von Komponenten wurde hinzugefügt, die es Entwicklern von Snap-Paketen ermöglichen, zusätzliche große oder optionale Ressourcen wie Debugging-Daten, Übersetzungsdateien und optionale Treiber separat vom Haupt-Snap-Paket zu verteilen, um die Größe der Basisinstallation zu reduzieren. Die Komponente wird als Bild im squashfs-Format erstellt, das in die Umgebung des Snap-Pakets eingebunden wird.
- Im Snapd REST API wurde die Kompatibilität mit der OpenAPI-Spezifikation sichergestellt.
- Im Display der Server Ubuntu Frame ermöglicht die Erstellung von eingebetteten grafischen Umgebungen (Internetcafés, Self-Service-Terminals, Informationsstände, digitale Beschilderungen). Es wurde die Möglichkeit hinzugefügt, die Schnittstellen mehrerer Anwendungen auf einem Bildschirm anzuzeigen. Zudem ist jetzt die Nutzung von GPU-Beschleunigung in Anwendungen möglich.
- Es wurde eine Systemeinstellung interface.allow-auto-connection hinzugefügt, um Regeln für die automatische Verbindung von Schnittstellen festzulegen.
- Die Unterstützung des Confdb-Mechanismus wurde hinzugefügt, um zentrale Einstellungen zu definieren, die nicht an bestimmte Snap-Pakete und Geräte gebunden sind.
- Der Python-Interpreter wurde aus dem Basissatz der Snap-Pakete entfernt und muss jetzt als separates Plugin installiert werden.
Quelle: opennet.ru
