Systemd 219 veröffentlicht

Die Arbeit an Systemd schreitet zügig voran. Lennart Poettering hat die neue Version 219 angekündigt, die unter anderem den Umgang mit Containern und Btrfs erleichtert.

Zunächst zu den zahlreichen Änderungen für Btrfs, die häufig auch den Umgang mit Containern betreffen. Die befinden sich neuerdings nicht mehr im Verzeichnis “/var/lib/containers”, sondern “/var/lib/machines”, generell zählt das Systemd-Projekt VMs und Container gleichermaßen zu den Maschinen.

Die Chroot-Alternative “systemd-nspawn” bringt diverse Änderungen mit, darunter einige nur für Btrfs. So gibt es zum Beispiel einen neuen Schalter namens “–ephemeral”. Der legt einen Btrfs-Schnappschuss vom Root-Verzeichnis eines Containers an und entfernt diesen wieder, wenn das System den Container zerstört. So lassen sich Container starten, deren Änderungen sich nicht auf das Root-Verzeichnis auswirken. Auch lässt sich so das Root-Verzeichnis des Hosts nutzen, um Container anzulegen, die das Host OS nicht beeinflussen. Eine weitere “systemd-nspawn”-Option, die nur für Btrfs funktioniert, heißt “–template”. Sie nimmt den Pfad eines Container-Trees als Template für die “–directory=”-Option. Das soll es ermöglichen, Container bei einem Erststart dynamisch zu starten.

Bevor ein Systemd-Tool zukünftig Dateien kopiert, testet es erstmal die Reflink-Option von Btrfs. Wird es fündig, muss es keine Datenblöcke kopieren, sondern lediglich einen neuen Inode anlegen, der auf dieselben Datenblöcke verweist, wie der Original-Inode. Das funktioniert ähnlich wie bei Hardlinks.

Der kleine Daemon “systemd-importd” lädt auf einem Btrfs-Dateisystem Container-Images in den Formaten “tar”, “raw”, “qcow2” oder “dkr” herunter und macht sie in “/var/lib/machines” als nspawn-Container verfügbar. Der Daemon kann Images über GPG verifizieren (außer “dkr”), entpackt gepackte Images transparent und stellt Sparse-Dateien wieder her. Damit lassen sich die Cloud-Images von Fedora und Ubuntu herunterladen und unmodifiziert booten.

Über “pull-tar”, “pull-raw” und “pull-dkr” stehen die letztgenannten Optionen auch für “machinectl” bereit. Über das Tool kontrolliert ein Admin den Systemd-Machine-Manager. Es zeigt nun auch Informationen über die in “/var/lib/machines” eingehängten Container an, kann diese Images aber auch klonen, umbenennen, entfernen oder sie als Read-only oder Read-write markieren.

Die Kommandos “copy-from” und “copy-to” erlauben es in Kombination mit “machinectl”, Dateien zwischen Containern und Host hin und her zu kopieren. Über den Schalter “bind” lassen sich Verzeichnisse des Host in Container einbinden, was jedoch nur im Zusammenspiel mit “systemd-nspawn” funktioniert.

Es gibt zahlreiche weitere Änderungen, die vor allem “systemd-nspawn” betreffen, aber auch “networkd” und “machinectl”. Admins lesen am besten das komplette Announcement von Lennart Poettering, das 49 Änderungen ankündigt. Systemd 219 funktioniert zur Zeit auf i386- und x86_64-Maschinen, auf ARM gibt es einen Linker-Fehler. Herunterladen lässt sich die neue Version direkt zu Beginn der Ankündigung, über Freedesktop.org.

E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben