Build-System

So bauen Sie sich Ihr eigenes Reparatur-System mit Lesslinux

Linux gibt jedem die Möglichkeit, ein Betriebssystem nach den eigenen Vorstellungen zu gestalten. Auch bei Notfall-und Rettungssystemen lohnt sich eine individuelle Anpassung.

In diesem Artikel stellen wir Ihnen das Build-System von Lesslinux vor. Die Nutzung des Builders ist anspruchsvoll und sollte auf erfahrene Linux-Nutzer treffen. Es belohnt aber mit einer für jegliche Bedürfnisse optimal angepassten Live-DVD oder einem Linux-Boot-Stick, den Sie langfristig aktuell halten können.

Vorbereitungen für das Build-System

Der Lesslinux-Builder lässt sich im Prinzip auf jedem Linux-System einrichten. Es sind allerdings etliche Zusatz-Tools erforderlich, die bei jeder Distribution anders heißen und teilweise auch anders arbeiten. Am einfachsten ist der Download des fertigen Lesslinux-Systems mit dem Namen Jabba, das alle nötigen Tools enthält. Jabba bietet bislang nur eine reduzierte grafische Oberfläche, was die Verwendung etwas erschwert. Als System für die Entwicklung empfiehlt sich ein 32-Bit-Linux, weil auch die Live-DVD mit 32 Bit arbeitet. Da zahlreiche Programmpakete kompiliert werden müssen, sind eine schnelle SSD und eine leistungsstarke CPU hilfreich.

Das Build-System setzt voraus, dass die SSD unter „/mnt/archiv“ eingehängt ist. Das erledigen Sie in einem Terminal-Fenster wie folgt:

sudo -p mkdir /mnt/archiv/LessLinux
sudo mount /dev/sd[xy]
sudo chmod -R 777 /mnt/archiv

Beachten Sie die Groß-Klein-Schreibung bei „LessLinux“. Ersetzen Sie „[xy]“ durch den Gerätepfad der SSD. Die letzte Zeile setzt Schreib-und Leserechte für alle Benutzer. Legen Sie dann einen neuen Benutzer an:

adduser --home /home/mattias --shell /bin/bash mattias

Adduser fordert Sie auf, Kennwort und Kennwortbestätigung einzutippen. Die Frage nach den persönlichen Daten beantworten Sie alle mit der Enter-Taste. Der Benutzer muss genau den Namen „mattias“ tragen. Er wird von einigen Scripts als Benutzer ohne Admin-Rechte benötigt.

Installieren Sie die erforderlichen Pakete für die Software-Entwicklung mit den drei Zeilen

apt-get install git autoconf lun zip ruby-all-dev ruby-magic ru by-hpricot ruby-sqlite3
apt-get install libmagic-dev te xinfo gawk squashfs-tools g++ py thon python-dev
gem install mahoro

Zuletzt laden Sie mit zwei Befehlen die Entwicklungsumgebung herunter:

cd /mnt/archiv/LessLinux
git clone https://github.com/My ria-de/lesslinux-builder.git

Das Lesslinux-System erstellen

Script in Aktion: Sie starten den Build-Vorgang in einem Terminal-Fenster.
Script in Aktion: Sie starten den Build-Vorgang in einem Terminal-Fenster.

Wechseln Sie in einem Terminal-Fenster in das Verzeichnis „/mnt/archiv/LessLinux/lesslinux-builder“, und verschaffen Sie sich mit sudo su root-Rechte. Sie finden im Verzeichnis das Script „quickbuild_lubuntu.sh“. Es prüft zuerst, ob unter „/mnt/archiv“ ein Datenträger eingebunden ist. Wenn nicht, bricht es ab. Ist Linux ohnehin auf einer SSD installiert oder Sie wollen das Verzeichnis auf der Festplatte verwenden, dann können Sie das ändern. Kommentieren Sie jede Zeile im Block von „if [ -z „$mounted“ ] ; then“ bis „fi“ mit einem „#“ aus. „quickbuild_ubuntu.sh“ ist für ein Ubuntu-System geeignet und „quickbuild_jabba.sh“ für Lesslinux-Jabba. Starten Sie dann das Script mit

bash quickbuild_lubuntu.sh

Es fragt zuerst, wie viele Threads Sie verwenden wollen. Übernehmen Sie den Standard „4“ mit der Enter-Taste. Sie können auch einen höheren Wert eingeben, etwa „12“ bei einem PC mit Sechs-Core-CPU, was den Build-Vorgang beschleunigt. Hier besteht jedoch die Gefahr, dass ein benötigtes Programm noch nicht fertig kompiliert ist, obwohl es bereits für ein anderes Paket erforderlich ist. Bleiben Sie daher besser beim Standardwert. Bestätigen Sie die nächste Frage mit der Enter-Taste. Der Build-Prozess beginnt dann automatisch.

Über die Paketverwaltung lässt sich ermitteln, welche anderen Pakete eine Software benötigt.
Über die Paketverwaltung lässt sich ermitteln, welche anderen Pakete eine Software benötigt.

Stage 1 und 2: Das Script teilt den Build-Prozess in drei Phasen. „Stage01“ umfasst alle Pakete, die für ein minimales Linux-System nötig sind, hinzu kommen noch einige Build-Tools. Die Quellpakete werden automatisch heruntergeladen und kompiliert. Den Fortschritt können Sie in einem Logfenster beobachten.

Danach folgt „Stage02“. Hier werden System-Tools und Programme wie Firefox, Thunderbird oder VLC erstellt. Insgesamt gibt es Scripts für etwa 700 Pakete. Das Kompilieren dauert auf einem Intel Core i7-4790 mit SSD etwa sechs bis acht Stunden. Ist der Rechner langsamer, müssen Sie deutlich mehr Zeit einplanen. Nach Abschluss von Stage02 beendet sich das Script.

Stage 3: Sie müssen jetzt nur noch mit dem Script „bash stage03_rescue.sh“ die Squash-FS-Container und die Startumgebung (Isolinux/Grub) für Lesslinux Search and Rescue erzeugen (etwa ein GB). Alternativ verwenden Sie „stage03_jabba.sh“ für ein Lesslinux-Jabba-System inklusive aller Programmpakete (etwa vier GB). Die ISO-Datei liegt anschließend im Verzeichnis „/mnt/archiv/LessLinux/stage03“. Testen Sie diese in einer virtuellen Maschine. Mit dem Befehl

dd if=Name-der-ISO-Datei.iso of=/dev/sd[x]

schreiben Sie schließlich das Abbild bootfähig auf einen USB-Stick. Ersetzen Sie den Platzhalter „[x]“ durch den Gerätepfad des Sticks. Für einen neuen Build-Vorgang müssen Sie das Verzeichnis „stage03“ umbenennen oder löschen.