Wir betrachten die Besonderheiten eines unveränderlichen Betriebssystems.
/ фото Unsplash
Wie Silverblue entstand
Fedora Silverblue ist ein unveränderliches Desktop-Betriebssystem. Alle Anwendungen werden in isolierten Containern ausgeführt und Updates werden atomar installiert.
Das Projekt wurde zuvor genannt . Später wurde es in Silverblue umbenannt. Laut den Entwicklern wurden mehr als 150 Namensvorschläge berücksichtigt. Silverblue wurde einfach gewählt, weil die Domain und die sozialen Medienkonten verfügbar waren.
Das aktualisierte System Fedora Workstation als die bevorzugte Desktop-Version in Fedora 30. Die Autoren sagen, dass Silverblue Fedora Workstation.
Einer der Teilnehmer bei Hacker News , dass die Konzeptidee von Silverblue eine Weiterentwicklung des Projekts sei. Dieses Konzept wurde vor etwa zehn Jahren in Fedora gefördert. Stateless Linux sollte die Verwaltung von Thin- und Thick-Clients vereinfachen. Dabei waren ebenfalls alle Konfigurationsdateien des Systems im „Nur-Lese“-Modus zugänglich.
Was bedeutet "Unveränderlichkeit"
Der Begriff "unveränderliches Betriebssystem" bedeutet, dass die Wurzel- und Benutzerdirektory im „Nur-Lese“-Modus gemountet werden. Alle veränderbaren Daten werden im Verzeichnis /var gespeichert. Ein ähnliches Verfahren verwenden die Entwickler und . Durch diesen Ansatz wird die Sicherheit des Betriebssystems erhöht und das versehentliche Löschen von Systemdateien (zum Beispiel durch einen Fehler) wird verhindert.
Einer der Teilnehmer bei Hacker News erwähnte in einem thematischen Thread, , dass er einmal versehentlich einige Systemdateien gelöscht hat, als er das Ubuntu Yaru-Thema modifizierte. Dabei hatte er aufgrund eines Fehlers im Regex keine Backups. Seiner Meinung nach hätte ein unveränderliches Betriebssystem Probleme vermeiden können.
Die Installation von Updates wird ebenfalls vereinfacht - dafür reicht es, das System von einem neuen Image neu zu starten. Zudem besteht die Möglichkeit, schnell zwischen mehreren Zweigen (Release-Versionen von Fedora) zu wechseln. Beispielsweise zwischen der derzeit entwickelten Version von Fedora und Repository mit den bevorstehenden Updates.
Was unterscheidet sich von klassischem Fedora
Zur Installation der Grundumgebung ( / und /usr ) wird die OSTree-Technologie verwendet. Man kann sagen, dass es sich um ein "Versionskontrollsystem" handelt. -Paketen. RPM-Pakete werden über rpm-ostree in das OSTree-Repository übertragen. Beim Installieren eines Pakets ein Wiederherstellungspunkt erstellt, auf den man im Falle eines Fehlers zurückkehren kann.
OSTree auch Installieren Sie Anwendungen aus DNF/YUM-Repositories und aus nicht unterstützten Fedora-Repositories. Hierfür muss anstelle des Befehls dnf install der Befehl rpm-ostree install verwendet werden. Das System erstellt ein neues Basis-Image des Betriebssystems und ersetzt das installierte.
Als Mechanismus zur Aktualisierung von Anwendungen wird verwendet. Es führt diese in Containern aus. Ein Flatpak-Paket beinhaltet nur die spezifischen Abhängigkeiten für die jeweilige Anwendung. Alle grundlegenden Bibliotheken (wie GNOME- und KDE-Bibliotheken) bleiben als anschlussfähige Runtime-Umgebungen installiert. Dieser Ansatz erlaubt es, die Paketgröße zu verringern, indem wiederkehrende Komponenten ausgeschlossen werden.

/ фото Unsplash
Um Anwendungen zu installieren, die nicht in Flatpak gepackt sind, kann man verwenden. Es ermöglicht die Erstellung eines Containers mit dem klassischen Fedora-Installer.
Ähnliche Lösungen
Es gibt auch andere Distributionen, deren Aufgaben denen von Silverblue ähnlich sind. Ein Beispiel könnte sein: von openSUSE. Dies ist keine eigenständige Distribution, sondern Teil der Plattform openSUSE Kubic zur Bereitstellung von CaaS (Container as a Service).
Das System arbeitet mit Docker-Containern. Ihre Images werden als RPM-Pakete verbreitet. Das die Installation von Kommandozeilenanwendungen, die im Flatpak-Format nicht verfügbar sind. Das Host-System zur Ausführung von Containern wird aus dem offiziellen Repository gebildet. .
MicroOS wurde für die Bereitstellung in großen Umgebungen (z. B. in Rechenzentren) entwickelt, kann jedoch auch auf einzelnen Maschinen betrieben werden.
Ein Beispiel für eine andere ähnliche Entwicklung könnte sein: . Dies ist eine Linux-Distribution, die auf dem Paketmanager Nix basiert. Ihr Hauptmerkmal ist die deklarative Beschreibung von Konfigurationen. Es ist nicht notwendig, das System manuell zu installieren und einzurichten. Der Zustand wird in einer speziellen Datei festgelegt, in der alle Pakete und Authentifizierungseinstellungen angegeben werden. Der Paketmanager bringt dann das OS automatisch in den angegebenen Zustand.
Dieses System wird aktiv von Cloud-Anbietern, Universitäten und IT-Unternehmen genutzt.
In jedem Fall hat Silverblue die Chance, seine Nische auf dem Markt zu finden. Ob dies gelingt, wird sich in Zukunft zeigen.
Materialien aus dem Ersten Blog über Corporate IaaS:
Zusätzliche Lektüre auf Habr:
Quelle: habr.com
