Für Linux-Benutzer bestehen oft Hürden, die teilweise nur durch Tricks oder Umwege überwunden werden können. Diese Schwierigkeiten entstehen, weil nicht jede Software für alle Paketmanager verfügbar ist. Oftmals müssen Benutzer dann auf externe Repositories zurückgreifen oder auf Quellen im Internet wie GitHub und andere Plattformen vertrauen.
Manchmal erfordert eine bestimmte Software jedoch bestimmte Abhängigkeiten oder eine spezifische Distribution. Ein traditioneller Ansatz wäre nun, eine virtuelle Maschine oder einen isolierten Container mit einer bestimmten Linux-Distribution einzurichten. Dies ist zum einen zeitaufwendig und erfordert häufig zusätzliche Systemressourcen. Obwohl es bereits gut funktionierende Lösungen mittels Containerisierung gibt, bietet Distrobox eine noch bessere Benutzererfahrung, da man sich nicht mit der zugrunde liegenden Technologie vertraut machen muss.
Inhaltsverzeichnis
Was ist Distrobox?
Mit dieser noch relativ jungen und innovativen Lösung erstellen wir im Handumdrehen eine gesamte Infrastruktur aus unterschiedlichen Distributionen, die ausschließlich auf einem Hostsystem läuft. Barrieren adé! Mithilfe von Distrobox können Anwender eine Vielzahl von Linux-Distributionen in einzelnen Containern auf dem System ausführen, ohne den Kernel ändern zu müssen oder den technischen Hintergrund der Containerisierung verstehen zu müssen.
Die Leistung ist dabei nahezu identisch mit der des Hostsystems, da Distrobox direkt auf der Hardware ohne eine Virtualisierungsebene dazwischen arbeitet und denselben Kernel verwendet. Diese flexible Lösung setzt auf eine Containerumgebung wie Podman oder Docker, um die Images innerhalb von wenigen Minuten isoliert voneinander bereitzustellen. Dabei stellt die Software den Benutzern eigene Befehle zur Verfügung, deren Verwendung ich euch in diesem Artikel auch näherbringen möchte.
Wer ist die Zielgruppe?
Die Zielgruppe für Distrobox ist relativ groß. Das können Entwickler, Systemadministratoren und sogar gewöhnliche Linux-Anwender sein. Im Folgenden finden sich einige mögliche Szenarien, in denen die Software sehr erfolgreich eingesetzt werden kann:
- Verbesserung der Softwarekompatibilität: Nehmen wir das folgende Beispiel an, ein Benutzer benötigt ein bestimmtes Werkzeug, das nur für Fedora verfügbar ist. Dank der Verwendung von Distrobox kann ohne großes Vorwissen ein Fedora-Container auf dem System gestartet werden, ohne die Hauptdistribution ändern zu müssen.
- Softwareentwicklung: Ein Entwickler arbeitet oft an mehreren Projekten, die unterschiedliche Umgebungen erfordern. Mit Distrobox kann der Entwickler für jedes Projekt einen separaten Container erstellen und isolierte Systeme getrennt voneinander auf einem Host betreiben. Gleichzeitig können auf diese Weise Kompatibilitäten vor der Veröffentlichung überprüft werden.
- Kombination verschiedener Umgebungen: Obwohl es einige Distributionen gibt, die sich im Kern sehr ähneln, gibt es dennoch Unterschiede in der Stabilität oder den modernen Features. Möchte ein Benutzer im Grunde die Vorteile einer LTS-Version aufgrund der Stabilität nutzen, aber gleichzeitig die neuesten Features des neuesten Releases verwenden, ist dies mit der Verwendung von Distrobox spielend einfach möglich.
Installation von Distrobox auf einem Linux-basierten Computer
Die Installation von Distrobox ist unter Linux einfach und unkompliziert, genau wie das gesamte Konzept. Die Software gehört bereits zum festen Bestandteil einiger Linux-Distributionen und kann mit etwas Glück direkt aus den Paketmanagern installiert werden. Wir müssen uns im Vorfeld entscheiden, ob wir Distrobox mit Docker oder Podman verwenden möchten. Ich finde, letzteres verdient aufgrund seiner Open-Source-Philosophie eine besondere Aufmerksamkeit. Deshalb verwenden wir in dieser Installationsanleitung die Docker-Alternative „Podman“.
Aus den offiziellen Paketquellen installieren: Unter APT-basierten Distributionen wie Ubuntu, Mint oder Debian können wir den folgenden Befehl im Terminal eingeben, um Distrobox und die erforderlichen Abhängigkeiten zu installieren:
sudo apt install distrobox podman
Verwendet ihr eine andere Linux-Distribution oder möchtet ihr sicherstellen, dass ihr die neueste Version von Distrobox auf eurem Computer installiert habt, könnt ihr sie direkt aus dem Internet herunterladen, indem ihr curl oder wget verwendet. Dies ist besonders nützlich, wenn die Software nicht Teil eurer verwendeten Linux-Distribution ist.
Herunterladen:
curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/install | sudo sh
Hinweis: Falls dieser Befehl nicht erfolgreich ausgeführt wird, ist höchstwahrscheinlich das curl-Paket nicht korrekt installiert. Alternativ könnt ihr auch wget anstelle von curl verwenden.
wget https://raw.githubusercontent.com/89luca89/distrobox/main/install
Das Skript für die Installation ausführen:
sudo sh install
Inbetriebnahme einer beliebigen Linux-Distribution als Container
Sobald die Software erfolgreich auf eurem System installiert wurde, könnt ihr einen neuen Container mit einer beliebigen Wunsch-Distribution erstellen. Dafür verwendet man den nachfolgenden Befehl:
distrobox-create
Die Container für die Implementierung unterschiedlicher Linux-Distributionen kommen dabei aus offiziellen Quellen (OCI-Container) wie Docker.io und Ähnliche. Um gezielt eine bestimmte Distribution mit einer Versionsnummer in den Betrieb zu nehmen, können wir den oben gezeigten Befehl wie folgt erweitern:
distrobox-create --image debian:12 --name Debian
Das Image für den Container wird jetzt heruntergeladen und automatisch gestartet. Um sich in einem Container über Distrobox anzumelden, verwenden wir den folgenden Befehl:
distrobox enter Debian
Anschließend befinden wir uns im neuen System (Container) und erhalten Zugriff auf das Terminal. Bei der ersten Verbindung werden wir in der Regel aufgefordert, ein neues Passwort festzulegen. Um die Verbindung zu diesem „Container“ zu beenden, kann einfach „exit“ eingegeben und abgesendet werden. Dadurch wird der Benutzer sofort abgemeldet und kehrt zum Hauptsystem zurück. Distrobox bietet dafür jedoch einen eigenen Befehl!
Den Container stoppen und zum Hostsystem zurückkehren:
distrobox stop
Neben Debian, Ubuntu, Fedora und Arch sind auch Distributionen wie openSUSE, Raspbian OS, Alpine Linux und viele weitere verfügbar. Bei Interesse könnt ihr die folgende Webseite besuchen, um mehr über die angebotenen Versionen zu erfahren: https://repology.org/project/distrobox/versions.
Zusätzliche Befehle zur Konfiguration und Steuerung von Distrobox über das Terminal
• distrobox-assemble - erstellt und löscht Container basierend auf einer Konfigurationsdatei
• distrobox-create - erstellt einen Container
• distrobox-enter - einen Container betreten
• distrobox-ephemeral - erstellt einen temporären Container und löscht ihn beim Verlassen der Shell wieder
• distrobox-list - listet alle Container auf, die mit distrobox erstellt wurden
• distrobox-rm - löscht einen beliebigen mit distrobox erstellten Container
• distrobox-stop - einen laufenden Container stoppen
• distrobox-upgrade – einen oder mehrere laufende Container aktualisieren
• distrobox-generate-entry - erstellt einen neuen Eintrag eines Containers in der Anwendungsliste
• distrobox-init - der Einstiegspunkt des Containers (nicht für die manuelle Verwendung gedacht)
• distrobox-export - kann innerhalb des Containers verwendet werden, um Anwendungen und Dienste aus dem Container auf den Host zu exportieren (Vorsicht!)
• distrobox-host-exec - nützlich, um Befehle direkt vom Host auszuführen, während man sich im Container befindet
Fazit und Zusammenfassung
In diesem Artikel habe ich euch das aktuell sehr beliebte Werkzeug Distrobox vorgestellt. Wir haben die Software, die Installation und die Anwendungsbereiche angesprochen. Meiner persönlichen Meinung nach handelt es sich bei Distrobox um eine flexible und benutzerfreundliche Lösung für erfahrene Linux-Benutzer, die aus verschiedenen Gründen die Barrieren ihres eigenen Systems umgehen möchten und Zugriff auf andere Distributionen aus der Linuxwelt benötigen.
Zusammengefasst ermöglicht diese Lösung eine Steigerung der Produktivität und eine effizientere Nutzung der Systemressourcen, da wir auf Virtualisierungsumgebungen und die Installation weiterer Systeme im Netzwerk verzichten können. Allerdings ist die Software eher weniger für Anfänger und Neulinge geeignet, da die Vielfalt an Befehlen und Abweichungen zwischen den verschiedenen Linux-Distributionen den Anwender überfordern könnte.
Falls ihr Fragen habt oder gerne euren Senf dazu geben möchtet, findet ihr dafür wie immer Platz in den Kommentaren. Mein Tipp: Probiert die Software einfach mal selbst aus und entdeckt die vielfältigen Möglichkeiten von Distrobox.