Debian ist so gesehen als Vorbild für die meisten anderen Linux-Distributionen das meist genutzte Linux-System, auch auf den meisten Webservern ist Debian vorherrschend. Debian kann man jedoch nicht nur einfach installieren und nutzen, sondern auch selbst sein eigenes Live-System erstellen. Ein solches Live-System kann so seine Vorteile haben, Sie können es individuell anpassen, die gewünschte Software vorinstallieren und vieles mehr. In diesem Beitrag der Linux Bibel sehen wir uns an wie dies funktioniert.
Inhaltsverzeichnis
Voraussetzungen schaffen
Nötig ist nur die Installation des Paketes „live-build“ über die Paket-Verwaltung.
Das eigene Debian Live-System erstellen
Genutzt wird Live-Build am Terminal. Um zu verstehen, wie Live-Build funktioniert, beginnen wir von ganz vorne. Wir erstellen zu Beginn ein neues Verzeichnis, in dem wir unser Live-System erstellen, ich nenne es jetzt ganz einfach einmal „debian“ – in dieses Verzeichnis wechseln wir nun auf dem Terminal:
cd debian/
Hier erstellen wir nun die grundlegende Konfiguration als normaler Benutzer mit dem Befehl:
lb config
Der Befehl erstellt die nötigen Verzeichnisse und Dateien, die für unser Live-System benötigt werden. Schon können wir unser erstes Live-System erstellen, hierzu nutzen wir am Terminal als Administrator den Befehl:
lb build
Der Befehl ermittelt die nötigen Dateien, lädt diese aus den Repositorys herunter und erstellt die Image-Datei, dieses können wir nun schon in einer virtuellen Maschine testen oder eben auch mit der Software Etcher auf einen USB-Stick kopieren und den Rechner damit starten:
Hier System (Bootloader):
Und das gestartete System:
Es handelt sich hierbei um ein Standard-Debian ohne grafische Oberfläche mit den Standard-Werkzeugen am Terminal. Damit können wir noch nicht viel anfangen – wir wissen nun jedoch wie es funktioniert. Standardmäßig wird die aktuelle Version von Debian genutzt, im aktuellen Fall zur Zeit dieses Artikels also etwa Bullseye. Möchten Sie stattdessen eine andere Version erstellen, etwa Bookworm geben Sie dies mit dem ersten Befehl zur Konfiguration an – Sie verwenden also statt:
lb config
den Befehl:
lb config --distribution bookworm
Damit wären wir nun so weit ein Debian-Image in der gewünschten Version von Debian zu erstellen. Nun gehen wir etwas weiter, wir wollen in unserem Live-System Software aus den Repositorys installieren. Hierzu öffnen wir aus dem Verzeichnis „config/package-lists“ die Datei „live.list.chroot“ mit einem beliebigen Texteditor:
live-boot
live-config
live-config-systemd
In dieser Textdatei schreiben wir nun pro Zeile ein Software-Paket pro Zeile, im Beispiel möchte ich die Desktop-Umgebung XFCE installieren – ich füge also das Paket „xfce4“ ein, für die deutsche Sprache „task-german“ und „task-german-desktop„, zusätzlich die grafische Paket-Verwaltung Synaptic durch das Paket „synaptic“ (um sich nicht verwirren zu lassen, erstellen Sie das Verzeichnis erneut und beginnen mit der Konfiguration von vorne):
live-boot
live-config
live-config-systemd
xfce4
task-german
task-german-desktop
synaptic
Nun bereinigen wir die alte Konfiguration als Administrator:
lb clean
und bauen das Image erneut:
lb build
Schon ist im Live-System die gewünschte Software installiert:
Benötigte Treiber aus den Repositorys bauen Sie natürlich ebenso über die genannte Datei ein. Besonders interessant sind eigene Live-Images natürlich, um etwa Debian Stable auf einem sehr aktuellen Rechner zu installieren, obwohl der Kernel von Debian Stable einfach zu alt dafür ist. Einen aktuellen Kernel binden Sie etwa über die Debian Backports ein. Dazu erstellen Sie im Verzeichnis „config/archives“ eine neue Textdatei namens „live.list.chroot“ und fügen folgende Zeile ein:
deb http://deb.debian.org/debian bullseye-backports main contrib non-free
„bullseye-backports“ ersetzen Sie hier natürlich durch die gewünschte Quelle. Nun binden Sie bei der Konfiguration mit der Option „–linux-packages“ den gewünschten Kernel ein – etwa:
lb config --distribution bullseye --linux-packages linux-image-5.14.0-0.bpo.2-amd64
Standardmäßig ist unter Debian nur das „main„-Repository aktiv, um zusätzlich automatisch auch die Repositorys „contrib non-free“ zu nutzen, nutzen Sie in der Konfiguration die Option „–archive-areas“ – um etwa den vorigen Befehl zu erweitern:
lb config --distribution bullseye --linux-packages linux-image-5.14.0-0.bpo.2-amd64 --archive-areas "main contrib non-free"
Eigene Pakete, die nicht aus den Repositorys stammen und aus dem Internet heruntergeladen wurden, lassen sich ebenfalls in das Image einbinden. Beispiele wären etwa Microsoft Teams, Google Chrome oder Vivaldi. Solche fertigen DEB-Pakete speichern Sie ganz einfach im Verzeichnis „config/packages.chroot“ – mehr ist nicht nötig.
Auch Appimages lassen sich problemlos einbinden – dazu erstellen Sie unter „config“ das Verzeichnis „includes/chroot/etc/skel“ und speichern die Appimage-Dateien darin. Dieses Verzeichnis ist übrigens auch gut für Konfigurationen im Home-Verzeichnis. Möchten Sie etwa eine angepasste „.bashrc“ in das Image einfügen, kopieren Sie diese ganz einfach in das Verzeichnis „includes/chroot/etc/skel“ – alles, was unter „skel“ liegt, landet automatisch im Home-Verzeichnis. Hier lassen sich auch ganze Verzeichnis-Strukturen anlegen – so wird das Original, das eigentlich eingesetzt würde, durch Ihre Modifikation ersetzt. Erstellen Sie hier ein Verzeichnis namens „Bilder“ und kopieren die gewünschten Bilder in dieses, landen diese auch im Live-System dort.
Um das Live-System auch installierbar zu machen, gibt es zwei Varianten, Sie installieren das Paket „debian-installer“ für die professionelle Installation, oder die Pakete „calamares calamares-settings-debian“ für die vereinfachte Installation – in diesem Fall müssen Sie allerdings auch unbedingt das Paket „sudo
“ installieren.
Eine vollständige Dokumentation zu Live-Build finden Sie unter Live-Build.
Das oben beschriebene Verzeichnis „includes/chroot/“ lässt sich nicht nur nutzen, um einzelne Dateien wie etwa die „.bashrc“ automatisch im Live-System einzubringen. Hier können Sie jegliche Änderungen am System anpassen. So legen Sie hier etwa Ihre eigene Verzeichnis-Hierarchie mit entsprechenden Dateien an.
Alles was Sie unter „includes/chroot/“ ablegen landet so gesehen unter „/“ im Live-System. Nehmen wir beispielsweise die Datei „/etc/bash.bashrc“ – diese konfiguriert die Bash global. Legen Sie im oben beschriebenen Verzeichnis ein Verzeichnis namens „etc“ an und darin die Datei „bash.bashrc“ mit den angepassten Inhalten – wird statt dem Original Ihre angepasste Version genutzt.
Dateien, die im Live-System für den Live-Benutzer verfügbar sein sollen, passen Sie wieder im eigenen schon beschriebenen Verzeichnis „includes/chroot/etc/skel/“ an.
Noch keine Reaktion