Die LIVE ISO anpassen und konfigurieren


Vorwort zu der Anleitung:

LIVE ISO anpassen und konfigurieren


Nachdem du im Teil 2 der Serie den ersten Lauf der ISO Erstellung abgeschlossen hast, wird es in diesem Teil etwas fortgeschrittener. Diesmal werde ich zeigen, wie man die LIVE ISO anpassen und ganz nach eigenem Geschmack einzigartig machen kann. Theoretisch wirst du in der Lage sein eine eigene Distribution  zu betreiben, wenn du dir die Zeit und den Aufwand für die Pflege eigener "Package-Server" zutraust. Viel Spaß und viel Erfolg!


Vorbereitung


  • Voraussetzungen: fortgeschrittener Linux Anwender, installierte VirtualBox
  • Architektur: amd64
  • Internetverbindung: ja
  • Schwierigkeitsgrad: komplex
  • Aufbau der Anleitung: einzelne Artikel
  • Form der Anleitung: zum Lesen

Die erste Anpassung


Wahrscheinlich hast du schon die ISO ausprobiert, die du im zweiten Teil der Serie erstellt hast und höchstwahrscheinlich ist dir auch gleich aufgefallen, dass die Tastatur nicht auf Deutsch ist. Also eigentlich ist diese schon auf Deutsch umgestellt. Aber halt nur im "X-Modus", sprich nur im Desktop Betrieb. Diesen Umstand werden wir bei der nächsten Erstellung berücksichtigen.

Verbinde dich wieder über SSH mit deiner virtuellen Maschine. In der Maschine gibst du bitte das ein. Dieser Befehl erstellt eine Datei in welcher du all deine Pakete, die du später auf der LIVE ISO haben möchtest, enthält. Ich persönlich lege mir für verschiedene Zwecke eine einzelne Datei an. Den Namen der Datei kannst du frei wählen. Wichtig ist nur, dass am Ende der Präfix ".list.chroot" angehängt wird. Ich gehe noch später drauf ein.

nano /home/$USER/config/package-lists/localization.list.chroot

Speichere die Datei und beende den Editor. Anschließend navigierst du bitte in das Verzeichnis "/home/$USER/config/package-lists/" und öffnest die neu erstellte Datei in deinem Editor um diese bequemer bearbeiten zu können.

task-german
console-setup

Wie schon erwähnt, wie die Datei heißt ist dir überlassen. Du kannst auch eine einzige Datei erstellen, in der du dann alles an Pakten reinschreibst. Ist aber nicht empfehlenswert, weil dadurch die Übersicht leiden wird. Aber was noch viel wichtiger ist! Das sind diese Präfixe (.list.chroot....). Eine kleine und doch wichtige Erklärung:

Die Bedeutung der Präfixe

  • '.list.chroot': Pakete in dieser Liste werden in der Live Umgebung vorhanden sein und werden später in das System installiert.
  • '.list.binary': Diese Pakete werden auf der ISO im Ordner "pool" gelegt. Ist praktisch für den Bootloader. So kann garantiert werden, dass selbst ohne Internet das System installiert werden kann.
  • '.list': Diese Pakete werden sowohl als auch im "chroot" und binär vorhanden sein.

Es gibt noch eine Reihe mehr von diesen Präfixen. Die werde ich aber immer, wenn das soweit ist erklären und dir meine persönliche Empfehlung niederschreiben. Du darfst natürlich experimentieren! Ist ja schließlich dein System! 🙂

Nun öffne die Datei "auto/config" und bearbeite diese wie folgt.

LIVE ISO anpassen: Keyboard Konfiguration

Danach erstellst du im Ordner "/home/$USER/config/includes.chroot" eine Ordnerstruktur, die so aussehen sollte: "/home/$USER/config/includes.chroot/etc/default". Es ist dir überlassen wie du vorangehst. Entweder im Dateimanager über SSH oder mit diesem Befehl in der virtuellen Maschine.

mkdir -p $HOME/config/includes.chroot/etc/default

Nun erstellst du bitte noch diese Datei hier...

nano $HOME/config/includes.chroot/etc/default/locale

...und als Inhalt das hier.

LANG="de_DE.UTF-8"

Speichern (STRG+O) und beenden (STRG+X) dieser Datei ist erwünscht.

Danach erstellst du noch eine Datei und zwar so.

nano $HOME/config/hooks/live/2000-set-locale.hook.chroot

Dies fügst du bitte in diese Datei hinein und speicherst/schließt diese im Anschluss ebenfalls.

#!/bin/bash

set -e

dpkg-reconfigure console-setup

Mache die Datei ausführbar

chmod +x $HOME/config/hooks/live/2000-set-locale.hook.chroot

Auch hier sind die Präfixe sehr wichtig!

Ein kleiner Tipp, den du wahrscheinlich sogar kennst. Beim Tippen in der Konsole kannst du viel Zeit sparen, wenn du die TAB Taste und die Pfeiltasten benutzt.

Auch die $HOME Geschichte braucht man in der Regel nicht, wenn man sich sowieso im Benutzer Verzeichnis befindet.

Erstelle noch eine Datei in "$HOME/config/includes.chroot/etc/default/" und nenne diese "keyboard".

nano $HOME/config/includes.chroot/etc/default/keyboard

Das ist der Inhalt dieser Datei.

## deutsche Tastatur in der Live Umgebung

XKBMODEL="pc105"
XKBLAYOUT="de"
XKBVARIANT=""
XKBOPTIONS=""

BACKSPACE="guess"

Jetzt kannst du mit diesem Befehl die erste Anpassung deiner ISO vornehmen, wenn du möchtest. Oder du machst einfach weiter, weil das ja noch nichts Besonderes ist. Ist nur lästige Fummelei gewesen. 😀

sudo lb clean && sudo lb build

Der Installer


Nach der ganzen Fleißarbeit im vorigen Abschnitt wird es jetzt etwas spannender. Du packst nun ein Installer auf deine ISO. Das nenn ich jetzt mal Live ISO anpassen lassen! 😀

Legen wir los! Öffne in deinem Dateimanager per SSH den "config/package-lists Ordner". In der virtuellen Maschine gibst du folgendes ein.

echo debian-installer-launcher > config/package-lists/installer.list.chroot_install
echo debian-installer-launcher > config/package-lists/installer.list.chroot_live

Das Präfix '.list.chroot_install' bedeutet, dass alle Pakete, die in dieser Liste sind werden nach der Installation entfernt.

Das Präfix '.list.chroot_live' bedeutet, dass die Pakete in der Live Umgebung vorhanden sein sollen.

Zurück im Dateimanager drückst du einmal auf F5 bitte und kopierst irgendeine von den vier Dateien und fügst diese im selben Ordner wieder ein. Benenne diese Kopie zur "bootloader.list.binary". Diese Dateien werden auf deiner LIVE CD/DVD oder auf deinem USB-Stick im Ordner "pool" abgelegt und garantieren, dass der Bootloader auch ohne Internet während der Installation installiert werden kann. Öffne nun bitte diese Datei und trage dies hinein.

grub-efi
grub-efi-amd64
grub-efi-amd64-bin
os-prober

Anschließend kopierst du noch einmal irgendwelche Datei und fügst auch diese wieder in den selben Ordner ein. Nenne diese "live-system.list.chroot". Hier kommen solche Sachen rein.

live-manual
live-tools

Die Desktop Umgebung


Nun zum letzten Abschnitt in dieser Folge (aber nicht in der Serie). Du installierst nun deine Desktop Umgebung nach Wahl. In dieser Anleitung zeige ich dir wie man eine minimale KDE bzw. Plasma5 Umgebung baut. Dir ist natürlich frei überlassen eine eigene Umgebung zu wählen. Sehr hilfreich können dir diese Informationen auf der Debian Seite sein.

Nun kopiere noch einmal eine beliebige Datei im Ordner "config/package-lists" und füge diese ebenfalls in diesen Ordner ein. Nenne diese "desktop.list.chroot" und füge das ein. Bedenke, dass du bei einem anderem Desktop die Datei auch dementsprechend anpassen musst. Außer die oberste Zeile. Die bleibt.

! Packages Priority standard

sudo
dbus-x11
ntfs-3g
bzip2
p7zip-full
unar
unzip
zip

xorg
kde-plasma-desktop
kde-config-gtk-style
kde-l10n-de

sddm
sddm-theme-circles
sddm-theme-elarun


dolphin-plugins
systemsettings
plasma-nm

Nun bist du bereit die ISO zu bauen! Führe fröhlich und zufrieden diesen Befehl aus und ich hoffe mit dir mit, dass alles glatt läuft.

sudo lb clean && sudo lb clean

Den Befehl "lb config" kannst du getrost ignorieren, weil dieser bei "sudo lb build" automatisch ausgeführt wird. Nach etwas Wartezeit kannst du hoffentlich über SSH die Datei in deinen Rechner jetzt kopieren oder ausschneiden und in einer Maschine testen. Ich habe mir für diese Zwecke immer mehrere Maschinen eingerichtet. Eine zum Bauen, eine zum Testen und eine zum kaputt machen.

Beim Testen ist mir aufgefallen, dass die automatische Anmeldung zwar funktioniert, aber man muss mit der rechten STRG+F1 in das Fenster wechseln. Warum auch immer. Ich finde noch die Lösung.


Abschluss


Nachdem die ISO fertig gestellt worden ist und du wahrscheinlich schon brennst diese zu testen, möchte ich mich erst mal verabschieden und schon mal ankündigen was dich im nächsten Teil erwarten wird.

Da ich in diesem Teil nicht geschafft habe dir zu zeigen wie man die "Debian Brandings" entfernt, weil es den Umfang des Artikels sprengen würde, werde ich mich um dieses Thema im nächsten Teil dieser Serie kümmern. Außerdem möchte ich noch zeigen wie du das System mit Includes und Preseeding besser in den Griff bekommen kannst.

Bei Fragen oder Problemen kannst du mir eine Mail schicken: support@diggenapps.de

Vielen Dank, dass du Interesse an dieser Serie hast und hoffentlich bis bald!