24.8.2008

Linux von Null an

default

 

24.8.2008: Warum soll man Linux von Null an installieren?

Es ist viel Arbeit, aber wozu? Wozu soll man sich die Mühe machen, wenn es so viele Distributionen gibt, wo man nur eine CD einlegen und ein paarmal "Enter" drücken muß?

1998 war in meiner Umgebung "Suse" die meistinstallierte Linux-Distribution. Ich fand es undurchschaubar und sehr schwierig zu installieren. "Debian" fand ich etwas einfacher, aber im Grunde auch undurchschaubar.

2008 ist "Suse" aus der Mode, "Debian stable" ist nicht mehr "stable", sondern fast unbrauchbar. Die beliebteste Linux-Distribution ist jetzt "Ubuntu". Ich finde es undurchschaubar. Die erste Amtshandlung der Ubuntu-Installations-CD ist: Man kann nur noch das neue Ubuntu booten, nichts Anderes mehr. Meine erste Amtshandlung nach der Installation bestand darin, zu reparieren, was Ubuntu kaputtgemacht hatte.

In den letzten zehn Jahren sind die Distributionen größer und - auf den ersten Blick - einfacher geworden. Sie sind aber tatsächlich schwieriger in Gang zu bekommen. Und wenn man etwas nicht so macht, wie die Distributionsentwickler es sich gedacht haben, funktioniert es nicht. Debian hatte mit Version 3.1 ("Sarge") seinen Höhepunkt überschritten. "Sarge" fand ich schlechter als "Woody", und "Etch" finde ich schlechter als "Sarge". Meiner Meinung nach geht die Zeit der vorkompilierten Distributionen ihrem Ende entgegen.

Man muß im Grunde die Denkweise der Distributionsentwickler nachvollziehen, um mit der Distribution richtig umgehen zu können. Ja, wenn das so ist, kann ich auch gleich Linux von Null an installieren. Dann habe ich ein System, das klein, einfach und durchschaubar ist. Das ist genau das, was ich brauche. Man sehe sich nur mal an, wie überschaubar und aufgeräumt /etc in einem "Linux von Null an" aussieht.

 

17.7.2008: Wie wird man fähig, Linux von Null an zu installieren?

Vorbereitungen:

  • viele Tätigkeiten in einem xterm ausführen, z.B.:
    • mc benutzen statt grafischem Dateimanager
    • Bilder konvertieren mit convert statt gimp
    • Drucken in "generic postscript", Vorschau mit gsview, drucken mit lpr, evtl. aufbewahren
    • Systemzustände mit watch anzeigen lassen: pstree, df, lpq
  • manpages lesen und mit der Zeit verstehen lernen
  • X konfigurieren in /etc/X11/xorg.conf statt mit einem grafischen Tool
  • Konfigurationsdateien in /etc editieren statt ein grafisches Tool zu benutzen
  • bei Störungen Fehlermeldungen in /var/log suchen

Zur Sache kommen:

  • Linux-From-Scratch einmal nach Anleitung des LFS-Book installieren
  • ein paar Dinge aus dem Beyond-Linux-From-Scratch-Book installieren
  • sich eine Paketverwaltung ausdenken oder im Internet suchen (oder meine benutzen)

Helfen:

  • sich auf der Mailingliste eintragen
  • ein paar Installierungsskripten adoptieren

Machen wir uns nichts vor: es ist ein Haufen Arbeit. Einmal alles aktualisieren erfordert ungefähr 300 Mannstunden. Dazu kommt die Kompilierungszeit von ungefähr 40 Stunden pro Version. Ich suche ungefähr zehn Freiwillige, dann ist es zu schaffen. Mit zehn Leuten ist es ungefähr eine Stunde pro Woche für jeden. Dann ist das System nach jeweils einem halben Jahr wieder neu.

 

Stand 2006: Das Hilfssystem

Um anzufangen, braucht man ein kleines Linux, um...

  • die LFS-Books, Tarballs und Patches herunterzuladen
  • die LFS-Books zu lesen
  • Kommandofolgen mit Cut&Paste herauszukopieren und auszuführen
  • Tarballs zu entpacken
  • Quellcode zu kompilieren
  • Konfigurations- und Hilfsdateien zu schreiben

Ein Ein-Disketten-Linux reicht im allgemeinen nicht, denn man braucht:

  • den Compiler (gcc u. glibc)
  • einen Texteditor (vi, nano, joe, mcedit, oder ...)
  • Mausunterstützung (gpm)
  • die Entpacker (gzip, bzip2, zip bzw. unzip)
  • Netzwerk- und PPP-Unterstützung (pppd)
  • Webbrowser, FTP-Client, Download-Tools
  • Tools um Partitionen zu erstellen
  • Tools für das Dateisystem

Am besten orientiert man sich an den Paketen, die im LFS-Book als Bestandteile von "Linux from Scratch" aufgeführt sind. Wenn man die Pakete hat, die LFS hat, braucht man darüber hinaus nur noch: gpm und mc (oder einen Texteditor)

 

"Linux from Scratch"

Gerard Beekmans und die anderen Leute von http://www.linuxfromscratch.org/ haben eine Methode und eine Anleitung ("LFS-Book") entwickelt, wie man sich Teile für Linux im Quelltext aus dem Internet zusammensucht und installiert. Es ist ein großartiges Buch, gut verständlich und praktisch fehlerfrei, für fortgeschrittene Anfänger geeignet. Zum Beispiel für Leute, die vor ihrem "Suse" sitzen, damit arbeiten und eigentlich zurechtkommen, die sich aber irgendwie "vom Grundwissen abgeschnitten" fühlen. Man bekommt mit Hilfe des "LFS-Book" ein sehr kleines, aber lauffähiges Linux, auf dem man dann weitere Teile installieren kann.

Ein weiteres Projekt von Gerard Beekmans und anderen ist "Beyond Linux from Scratch" Es ist ein weiteres Buch, das "BLFS-Book", das im Stil des "LFS-Book" weitere Dinge beschreibt, die man installieren kann bzw. sollte, wenn man sein "Linux from Scratch" fertig installiert hat, und wenn man es nun zu einem richtigen arbeitsfähigen System ausbauen möchte.

 

Package Management

Beim Installieren geht nicht immer alles glatt. Man braucht unbedingt eine Möglichkeit, alles was ein "Paket" installiert hat, sämtliche Dateien, auf einfache Weise wieder zu löschen. Auf http://lfs.linux-matrix.net/hints/list.html sind mehrere "Package Management"-Lösungen beschrieben. Keine davon hat mir allerdings das Gefühl gegeben, die Dinge wirklich "unter Kontrolle" zu haben. Deshalb habe ich mir selbst zwei kleine Skripten geschrieben: "_inst" und "_uninst".

Inzwischen ist ein zweiter Grund hinzugekommen, ein vernünftiges Paketmanagement zu haben: Man möchte nicht alle Befehle immer wieder von Hand eintippen. Ab dem zweiten Mal darf es auch automatisch gehen. Im Prinzip soll man mit 6 Befehlen ein neues LFS-System bauen können:

  • cd /mountpoint_leere_partition/install/infos
  • ../_toolinst 001*
  • ../_lfsinst 002*
  • (das LFS-System booten)
  • cd /install/infos
  • ../_inst 23*

(Es hängt noch an ein paar Stellen.)

 

Download der Skripten

 

Paketliste

Das ist eine Übersicht der Installierungsskripten, gegliedert mit Hilfe von Leerskripten, die nichts als Dependencies haben.

 

Mailingliste

Für Leute, die sich Linux von Null an mit Hilfe meiner Skripten installieren und die vielleicht sogar Lust haben, mir ein bißchen zu helfen, die Skripten aktuell zu halten (was mir allein offensichtlich nicht sehr gut gelingt).

abatz.de Jörn Abatz - Technische Software Impressum