Die ersten Sekunden eines Linux-Computers

Aus LinuxUser 11/2010

Die ersten Sekunden eines Linux-Computers

© 123rf.com, Pete Saloutos

Staffellauf

Bis der Linux-Desktop auf dem Monitor erscheint, haben sich im Hintergrund bereits mehrere Programme gegenseitig angestoßen. Fällt dabei nur einem davon der Stab aus der Hand, bleibt die gesamte Staffel stehen. Dann ist es gut, zu wissen, welche Läufer in welcher Reihenfolge an der Start gegangen sind.

Nach dem Einschalten des Computers startet ein kleines, fest auf der Hauptplatine eingebautes Programm. Dieses “Basic Input/Output System” oder kurz BIOS weckt alle Hardwarekomponenten, führt ein paar grundlegende Tests durch, verschafft sich einen Überblick über die angeschlossene Hardware und zeigt ein Einschaltbild an. Die ganzen Prüfprozeduren bezeichnet man auch als Power On Self Test, kurz POST.

Serie: Linux-Bootsysteme

Der Bootvorgang — Grundlagen LU 11/2010
Das Urgestein: System-V-Init LU 12/2010
Next Generation: Upstart, Systemd LU 01/2011

Sichtschutz

Bei vielen Rechnern von der Stange besteht das Einschaltbild aus dem Logo des Herstellers, andernfalls aus zahlreichen, kryptischen Textinformationen. Genau dazwischen erscheinen allerdings auch Fehlermeldungen. Paradebeispiel ist ein locker sitzender oder herausgerutschter Tastaturstecker. Das BIOS hält dann gerne den gesamten Rechner an und präsentiert die sinnige Meldung No keyboard detected. Press F1 to resume.

Hinter den Logos der Hersteller bleiben solche Meldungen allerdings gerne schon einmal verborgen. Bei einigen Intel-Rechnern erscheint immerhin noch eine hexadezimale Zahl, deren Bedeutung man dann im Handbuch oder Internet nachschlagen darf. Glücklicherweise lässt sich in den meisten Fällen das Logo deaktivieren und somit auch gleich noch der Startvorgang etwas beschleunigen. Dazu müssen Sie die Grundeinstellungen des BIOS aufrufen.

Wie Sie dorthin gelangen, hängt vom Hersteller der Hauptplatine, des BIOS und des PCs ab. In der Regel müssen Sie nach dem Einschalten [Entf], seltener [F1] oder [Esc] drücken. Eine Texteinblendung im Einschaltbildschirm gibt hierüber Aufschluss. Liegt ein Herstellerlogo darüber, schlagen Sie im Handbuch nach oder probieren einfach die drei Tasten aus. Die BIOS-Einstellungen geben sich meist als karges Textmenü, in dem Sie über die Pfeiltasten navigieren. Grundsätzlich sollten Sie hier nur die Punkte ändern, deren Bedeutung Sie verstehen – andernfalls könnten Sie irreparable Schäden anrichten.

Abbildung 1: Der Bootvorgang im Überblick: Das BIOS startet Grub, der seinerseits den Kernel und die Initrd lädt. Der Kernel wiederum aktiviert <code srcset=

init, das schließlich alle benötigten Dienste hochfährt.” width=”300″ height=”286″ /> Abbildung 1: Der Bootvorgang im Überblick: Das BIOS startet Grub, der seinerseits den Kernel und die Initrd lädt. Der Kernel wiederum aktiviert init, das schließlich alle benötigten Dienste hochfährt.

Y und Z

Erst wenn Linux vollständig geladen wurde, gilt die deutsche Tastaturbelegung. Sollte bis dahin etwas schief laufen, gilt bis auf wenige Ausnahmen die englische Belegung. Auf ihr sind Y und Z vertauscht, der Schrägstrich (/) liegt auf der Minus-Taste, das Minus auf dem scharfen S (ß) und das Istgleich-Zeichen auf dem Hochkomma (´).

Die Einstellungen zum Systemstart finden Sie entweder auf der Hauptseite (meist hinter Main) oder in einem Menü Boot. Bei einem drei Jahre alten BIOS von American Megatrends, Inc. (AMI) versteckten sich die Einstellungen hinter Boot | Boot Settings Configuration, wobei der Punkt Full Screen Logo auf [Disabled] zu setzen war (Abbildung 2). In diesem Bereich stellen Sie auch die nervende Tastaturabfrage ab – bei unserem Beispiel-BIOS war dazu Wait For ‘F1’ If Error auf [Disabled] zu setzen. Damit lässt sich der Computer auch als tastaturloser Media-PC im Wohnzimmer beschwerdefrei hochfahren. Prüft der Rechner schließlich noch bei jedem Einschalten den Speicher, sollten Sie eine Option namens Quick Boot oder Fast Boot auf [Enabled] schalten. Damit verkürzt sich zwar die Bootzeit, demgegenüber haben Sie aber auch weniger Zeit, die Einschaltmeldungen zu lesen. Im Falle eines Falles frieren Sie für die Lektüre mit [Pause] den Startprozess manuell ein, ein Druck auf eine beliebige andere Taste weckt das schlafende BIOS wieder.

Abbildung 2: In den BIOS-Einstellungen deaktivieren Sie ein nervendes Hersteller-Logo (hier <code srcset=

Full Screen Logo).” width=”300″ height=”243″ /> Abbildung 2: In den BIOS-Einstellungen deaktivieren Sie ein nervendes Hersteller-Logo (hier Full Screen Logo).

Die meisten BIOS-Varianten listen im Startschirm ganz kurz alle erkannten Laufwerke auf. Neben Festplatten gehören hierzu insbesondere auch USB- und DVD-Laufwerke. Stoppt hier der Bootprozess, dann verursacht der zuletzt genannte Datenträger Probleme. Einige BIOS-Varianten führen nach dem Startschirm in einem zweiten Screen noch einmal die erkannte Hardware auf. Hier sollten alle Laufwerke erscheinen – insbesondere dasjenige mit dem installierten Linux-System.

Booten

Den gesamten Startvorgang bezeichnet man auch als Booten oder Bootprozess. Diese Begriffe haben ihren Ursprung in der englischen Metapher “To pull oneself up by one’s bootstraps”, frei übersetzt: “sich selbst an den eigenen Stiefelschlaufen aufrichten”. Eine deutsche Entsprechung wäre “an den eigenen Haaren aus dem Sumpf ziehen”. Da sich der Computer und das Betriebssystem (fast) von alleine starten, hat man diese Redewendung übertragen, wobei von ihr nur noch die Begriffe Bootstraps und später Boot übrig blieben.

Erster!

Hat das BIOS keine Probleme entdeckt, sucht es nach einem startfähigen Medium. In welcher Reihenfolge es dazu alle angeschlossenen Laufwerke abklappert, legen Sie wieder in den Grundeinstellungen des BIOS fest. In unserem Beispiel-BIOS existiert dazu den Punkt Boot Device Priority (Abbildung 3). Je nach BIOS sortieren Sie dort entweder mit der Plus- und Minus-Taste die erkannten Laufwerke um oder aber wählen in einer Liste die Datenträger aus einem Ausklappmenü. Steht das Festplattenlaufwerk mit dem Linux-System an oberster Stelle, muss das BIOS nicht erst bei leeren USB-Sticks oder DVD-Laufwerken anklopfen. Die dabei gesparten Millisekunden fallen im gesamten Bootprozess jedoch nicht ins Gewicht.

Abbildung 3: In den BIOS-Einstellungen legen Sie in einer Liste die Startreihenfolge der Laufwerke fest. Hier sucht das BIOS zunächst auf einem DVD-Laufwerk nach einem startfähigen Medium.

Abbildung 3: In den BIOS-Einstellungen legen Sie in einer Liste die Startreihenfolge der Laufwerke fest. Hier sucht das BIOS zunächst auf einem DVD-Laufwerk nach einem startfähigen Medium.

Zusätzlich bieten mittlerweile alle halbwegs aktuellen Computer ein kleines Auswahlmenü an, in dem Sie gezielt ein Startlaufwerk auswählen. Dieses Bootmenü zaubern Sie im Startbildschirm mit einer ganz bestimmten Taste hervor – welche genau, hängt wieder vom verwendeten BIOS ab. Meist funktioniert [F8] oder [F12], ansonsten hilft wieder ein Blick auf den Startbildschirm. Dort firmiert die Funktion unter Umständen als BBS POPUP.

Speisenkarte

Steht das Startlaufwerk fest, sucht das BIOS an seinem Anfang nach einem Miniprogramm, dem so genannten Bootloader. Er lädt und startet wiederum das eigentliche Betriebssystem. Aktuelle Distributionen installieren meist den Grand Unified Bootloader, kurz Grub. Er stellt alle auf der Platte liegenden Betriebssysteme in einem Menü zur Auswahl (Abbildung 4). Neben Grub gibt es noch viele weitere Bootloader, die sich teilweise auf unterschiedliche Einsatzzwecke spezialisiert haben. So startet Isolinux Live-Systeme von CD oder DVD, Syslinux vorzugsweise Rettungssysteme von Diskette oder USB-Sticks, während U-Boot eingebettete Systeme hochfährt. Jongliert ein Bootloader wie Grub mehrere Betriebssysteme, bezeichnet man ihn auch als Bootmanager.

Abbildung 4: Grub 2 unter Ubuntu 10.04 bieten nur ein recht karges Menü.

Abbildung 4: Grub 2 unter Ubuntu 10.04 bieten nur ein recht karges Menü.

In freier Wildbahn trifft man Grub derzeit in zwei Geschmacksrichtungen an: Die ältere Fassung, auch als Grub 0.98 oder Grub Legacy bekannt, startet beispielsweise OpenSuse. Der komplett neu entwickelte und nun modular aufgebaute Grub 2 hat noch nicht ganz den Funktionsumfang seines Vorgängers. Da er aber das Ext4-Dateisystem kennt, hat unter anderem Ubuntu ihn mit an Bord genommen. Grub 2 darf der Distributor noch über sogenannte Themes aufbrezeln. Damit der alte Grub Legacy eine hübsche Optik wie in Abbildung 5 bietet, mussten ihn die Distributoren noch mit dem Programmpaket Gfxboot aufbohren.

Abbildung 5: Hier werkelt Grub Legacy unter OpenSuse 11.3.

Abbildung 5: Hier werkelt Grub Legacy unter OpenSuse 11.3.

Bühnenreif

Direkt hinter dem Bootloader liegt in den ersten 512 Byte einer Festplatte die Partitionstabelle, in der die Aufteilung der Festplatte hinterlegt ist. Das gesamte Gebilde bezeichnet man als Master Boot Record, kurz MBR. Andere Computersysteme, wie etwa aus dem Hause Apple, verwenden hier unter Umständen einen abweichenden Aufbau.

512 Byte sind nicht besonders viel. Aus diesem Grund liegt dort nur ein kleiner Teil von Grub, die sogenannte Stage 1. Sie sucht auf der Festplatte den Rest von Grub, Stage 2. Sofern dieser zweite Teil in einer Datei liegt (meist unter /boot auf der Linux-Partition), lädt Stage 1 erst noch einen Dateisystemtreiber Stage 1.5 nach. Bei Grub 2 entfällt durch den modularen Aufbau Stage 1.5: Hier besitzt bereits Stage 1 alle notwendigen Kenntnisse.

Liegt nur Linux auf der Platte, bekommen Sie Grub bei einigen Distributionen wie Ubuntu gar nicht mehr zu Gesicht. In diesem Fall erzwingen Sie die Anzeige des Menüs, indem Sie direkt nach dem Einschalten des Computers die [Umschalt]-Taste gedrückt halten. Einen defekten Grub erkennen Sie daran, dass sich kein Menü zeigt oder nach einer Meldung der Art GRUB Loading stage 2.. das System steht. Eine Ausfallursache sind häufig andere Bootloader, die Grub einfach von der Festplatte werfen. Können Sie hingegen das Menü noch aufrufen beziehungsweise sehen, kann Grub Linux aus irgend einem Grund nicht laden (dazu mehr im Abschnitt “Besuch beim Pinguin”).

Restaurierung

Um einen zerstörten Grub zu reanimieren, starten Sie eine Linux Live-CD, öffnen ein Terminal-Fenster und mounten die Partition mit dem Linux-System:

$ sudo mount /dev/sda1 /mnt

In diesem Beispiel liegt Linux auf der ersten Partition der ersten Festplatte (/dev/sda1), der Einhängepunkt heißt /mnt. sudo fdisk -l liefert zuvor Hinweise auf den Namen der korrekten Partition, mnt legen Sie gegebenenfalls an (sudo mkdir /mnt). Als nächstes blenden Sie das laufende System für das Terminal aus, indem Sie eine so genannte Chroot-Umgebung schaffen (Listing 1). Damit stellen Sie sicher, dass Grub gleich nicht versehentlich die Einstellungen des Rettungssystem übernimmt.

Listing 1

$ sudo mount -o bind /dev /mnt/dev
$ sudo mount -o bind /proc /mnt/proc
$ sudo chroot /mnt

Als nächstes gilt es herauszufinden, welche Grub-Version auf der Festplatte schlummert. Im Fall des alten Grub Legacy, wie er beispielsweise in OpenSuse bis Version 11.3 zum Einsatz kommt, schreiben Sie den Bootloader mit

$ sudo grub-install --root-directory=/mnt/boot /dev/sda

wieder an den Anfang der ersten Festplatte. Bei Grub 2, wie ihn Ubuntu verwendet, untersucht das Kommando update-grub zunächst die Festplatte nach weiteren Betriebssystemen und erstellt das Menü. Anschließend schreiben Sie das Ergebnis per

# grub-install /dev/sda

an den Anfang der ersten Festplatte. Falls dabei eine Fehlermeldung erscheint, probieren Sie es mit

# grub-install --recheck /dev/sda

erneut. Einen anderen Weg, Grub zu reanimieren, sollten Sie nicht beschreiten: Andernfalls laufen Sie immer Gefahr, die Partitionstabelle zu zerstören. Bekommt sie auch nur einen Kratzer ab, sind restlos alle Daten auf Ihrer Festplatte verloren.

Besuch beim Pinguin

Liegen keine Fehler vor, versucht Grub das gewählte Betriebssystem zu starten. Im Fall von Linux betritt der Bootloader dazu auf die Partition mit dem Linux-System (die so genannte Root-Partition), wechselt ins Verzeichnis /boot und lädt dort den Betriebssystemkern, englisch: Kernel. Der liegt für gewöhnlich stark komprimiert in der Datei vmlinuz. Nachdem Grub ihn im Hauptspeicher entpackt hat, startet er den Kernel und übergibt ihm die volle Kontrolle über den PC. In dieser Phase kann es gleich an mehreren Stellen klemmen.

Dateisysteme sorgen dafür, dass auf einer Festplatte kein Datensalat entsteht. Sie legen fest, auf welche Art und Weise die Dateien wo auf einem Datenträger landen. Dummerweise gibt es sie wie Sand am Meer: Windows nutzt NTFS, die Linux-Distributionen bevorzugen derzeit Ext3 und Ext4. Damit Grub ein Betriebssystem nachladen kann, muss er das entsprechende Dateisystem kennen – das ist aber nur bei ein paar Dutzend etablierten Exemplaren der Fall. Möchten Sie Linux beispielsweise auf dem neuen Btrfs installieren, müssen Sie die Festplatte aufteilen und extra eine kleine Boot-Partition mit Ext3/4 schaffen, in der alle notwendigen Startdateien von Linux einschließlich des Kernels liegen – und das, obwohl Linux selbst Treiber für Btrfs mitbringt.

Als nächstes muss Grub den korrekten Dateinamen des Linux-Kernels kennen. Die meisten Distributionen erstellen im Verzeichnis /boot einen symbolischen Link vmlinuz auf die eigentliche Datei vmlinuz-Kernelversion. Sehen Sie zwar das Grub-Menü, nach der Auswahl eines Punktes aber nur noch Schwarz, dann sollten Sie die Einstellungen hinter dem entsprechenden Menüeintrag kontrollieren.

Aktionsbündnis

Zeigt Grub ein Textmenü ähnlich dem aus Abbildung 4, holen Sie über die Taste [E] die hinter einem Eintrag steckenden Aktionen hervor. Wie in einem Texteditor korrigieren Sie diese Einstellungen hier direkt und führen das Ergebnis dann mit [Strg]+[X] aus. Damit enden aber schon wieder die Gemeinsamkeiten, die eigentlichen Befehle unterschieden sich zwischen den beiden Grub-Versionen. Abbildung 6 zeigt ein Beispiel für Grub 2: Um Linux zu starten, benötigt der Bootmanager zunächst das Wissen um das Ext2-Dateisystem (insmod ext2), den Kernel findet er auf der ersten Partition der ersten Festplatte (set root='(hd0,1)') in der Datei /boot/vmlinuz-2.6.32-22-generic.

Abbildung 6: Grub 2 startet mit diesen Aktionen ein Ubuntu.

Abbildung 6: Grub 2 startet mit diesen Aktionen ein Ubuntu.

Bei Grub Legacy verhindert häufig ein vom Distributor aufgehübschtes Bootmenü den direkten Zugriff auf die Einstellungen (wie etwa bei OpenSuse). In diesem Fall ist die Konfigurationsdatei /boot/grub/menu.lst der passende Anlaufpunkt. Sie öffnen und bearbeiten sie als Administrator von einem Rettungssystem aus mit einem Texteditor – legen Sie aber vorher unbedingt eine Sicherheitskopie an. In der Datei finden Sie verschiedene Abschnitte, die jeweils mit dem Schlüsselwort title beginnen, dem dann der entsprechende Menüeintrag folgt (Abbildung 7).

Abbildung 7: Wie hier <code srcset=

menu.lst verrät, besitzt das Bootmenü dieser OpenSuse-11.3-Installation drei Einträge.” width=”300″ height=”205″ /> Abbildung 7: Wie hier menu.lst verrät, besitzt das Bootmenü dieser OpenSuse-11.3-Installation drei Einträge.

Der nächste Befehl root (hd0,1) teilt Grub mit, dass sich der Kernel auf der zweiten Partition der ersten Festplatte befindet. Hinter kernel steht schließlich noch der vollständige Dateiname des Linux-Kernels.

Wenn Sie dasselbe unter Grub 2 erreichen möchten, können Sie entweder darauf hoffen, dass update-grub bei einer Neuinstallation die fehlerhaften Einträge korrigiert, oder müssen sich in die komplexen Konfigurationsdateien einarbeiten. Eine Anleitung dazu bietet ein Artikel aus LU 01/2010 [1].

Im Gegensatz zu Linux zählen übrigens beide Grub-Versionen die Laufwerke von 0 aus durch, /dev/sda mutiert hier zu hd0. Grub orientiert sich dabei an der Reihenfolge, die das BIOS vorgibt. Bei den Partitionen beginnt Grub 2 die Nummerierung bei 1, Grub Legacy startet hingegen bei 0. Die Angabe hd0,1 meint bei Grub 2 somit die erste Partition der ersten Festplatte, bei Grub Legacy hingegen die zweite Partition der ersten Platte.

Abbildung 8: Einige Distributionen (wie hier OpenSuse 11.3) bieten eine grafische Oberfläche, mit der man das Grub-Menü etwas bequemer nach seinen Wünschen verändern kann.

Abbildung 8: Einige Distributionen (wie hier OpenSuse 11.3) bieten eine grafische Oberfläche, mit der man das Grub-Menü etwas bequemer nach seinen Wünschen verändern kann.

Fensterkette

Grub kann nicht nur Linux starten, sondern auch einen anderen Bootloader. Da der Anfang der Festplatte bereits belegt ist, muss der fremde Bootloader in den ersten 512 Bytes einer der primären Partitionen liegen. Dieser Bereich ist extra für diese Zwecke reserviert und heißt passend Partition Boot Record. Auf diese Weise starten Grub auch Betriebssysteme, mit denen er sich überhaupt nicht auskennt – wie etwa Windows: Das BIOS lädt Grub, der wiederum aus der Windows-Partition den Windows-Bootloader, welcher schließlich das Betriebssystem aus Redmond startet. Es entsteht eine Kette aus Bootloadern, die man auch als Chainloader bezeichnet.

Mit diesem Wissen lässt sich eine Unart von Windows beheben: Wenn Sie Microsofts Betriebssystem nach Linux installieren, überpinselt es ohne Nachfrage Grub mit seinem eigenen Bootloader. Um wieder Linux starten zu können, schreiben Sie zunächst Grub zurück und fügen ihm dann einen weiteren Menüeintrag für Windows hinzu. Grub-2-Besitzer gehen dazu einfach wie im Text unter “Restaurierung” beschrieben vor: Der Befehl update-grub findet automatisch den Bootloader von Windows und erstellt einen passenden Menüeintrag.

Bei Grub Legacy fügen Sie zunächst als Administrator der Datei /boot/grub/menu.lst am Ende die folgenden Zeilen hinzu:

title Windows
  root (hd0,5)
  makeactive
  chainloader +1

Dabei passen Sie die Festplattenangabe an Ihre Gegebenheiten an. Die Zeile chainloader +1 sorgt dafür, dass Grub den Windows-Bootloader auf seiner Partition weckt.

Pinguine an die Macht

Konnte Grub den Linux-Kernel finden, startet er diesen und übergibt ihm die Kontrolle. Das freie Betriebssystem schaut sich jetzt zunächst im Computer etwas um, ermittelt die verbaute Hardware und lädt dazu die passenden Treiber. Dabei muss Linux häufig Treiber laden, die nicht fest im Kernel integriert sind. Zu diesem Zeitpunkt gibt es aber noch keinen Zugriff auf die Festplatte. Um das Dilemma zu lösen, schnüren viele Distributionen ein absolutes Mini-Linuxsystem und verpacken es in eine einzige Datei, die meist den Namen initrd trägt und im Verzeichnis /boot liegt.

Die Funktionsweise dieser Initial RAM-Disk ähnelt den bekannten ISO-Dateien für CDs: Grub lädt die Datei initrd in den Hauptspeicher, wo der Kernel ihren Inhalt wie eine Mini-Festplatte sieht. Da die Initial RAM-Disk wichtige Treiber enthält, bleibt das System ohne sie im schlimmsten Fall stehen. Wo die initrd zu finden ist, ermittelt Grub Legacy aus der Pfadangabe hinter initrd in der Datei menu.lst (Abbildung 7). Bei Grub 2 finden Sie diese Zeile, indem Sie in seinem Bootmenü den entsprechenden Eintrag ansteuern und dann [E] drücken (Abbildung 6).

Sobald der Kernel alle grundlegenden Treiber geladen hat, entfernt er die initrd wieder aus dem Speicher und bindet dafür die Festplattenpartition mit dem richtigen Linux-System ein. Welches Laufwerk beziehungsweise welche Partition die richtige ist, gibt ihm noch Grub mit auf den Weg. Wenn Sie einen Blick in die Datei menu.lst werfen, beziehungsweise im Fall von Grub 2 auf Abbildung 6, finden Sie diese Zusatzinformationen am Ende der Zeile kernel respektive linux. Die Partition mit dem kompletten Linux-System steht dort hinter root=.

Mittlerweile verwenden alle Distributionen keine Gerätenamen mehr, sondern identifizieren die Partitionen anhand eindeutiger Identifikationsnummern, den Universally Unique Identifier, kurz UUIDs. Sollte der Kernel zwar starten, irgendwann aber das Root-Dateisystem nicht mehr einbinden können, ist möglicherweise diese Nummer falsch. Ersetzen Sie sie dann gegen den entsprechenden Gerätenamen, beispielsweise root=/dev/sda1. Bei Grub Legacy müssen Sie dazu die Datei menu.lst anpassen. Bei Grub 2 steuern Sie im Bootmenü den Linux-Eintrag an, drücken [E] und ändern den Befehl im Text (siehe Abbildung 9).

Abbildung 9: Hier wurde die (falsche) UUID der Festplatte gegen den Gerätenamen <code srcset=

/dev/sda1 ausgetauscht.” width=”300″ height=”225″ /> Abbildung 9: Hier wurde die (falsche) UUID der Festplatte gegen den Gerätenamen /dev/sda1 ausgetauscht.

Befehlsgewalt

Die übrigen kryptischen Parameter hinter root= lösen im Kernel beim Startvorgang ganz bestimmte Aktionen aus (Abbildung 10). Beispielsweise schalten apm=off und acpi=off das Powermanagement aus, was gerade auf einigen Notebooks Hänger vermeidet. Ebenfalls helfen manchmal noapic und nolapic, mit denen man (vereinfacht gesprochen) die automatische Hardware-Einrichtung deaktiviert [2]. Eine Liste mit weiteren Parametern finden Sie unter anderem unter [3].

Abbildung 10: Die meisten Grub-Legacy-Bildschirme zeigen die zusätzlichen Kernel-Parameter in einem Eingabefeld am unteren Rand an. Dort hängen Sie eigene Parameter einfach an oder löschen vorhandene.

Abbildung 10: Die meisten Grub-Legacy-Bildschirme zeigen die zusätzlichen Kernel-Parameter in einem Eingabefeld am unteren Rand an. Dort hängen Sie eigene Parameter einfach an oder löschen vorhandene.

Während der Linux-Kernel nach und nach die Treiber lädt, spuckt er auf dem Bildschirm zahlreiche Statusmeldungen aus. Diese bei Problemen hilfreichen Informationen verstecken die meisten Distributionen unter einem schicken Ladebildschirm, dem sogenannten Splashscreen. Dieses Bild lädt der Kernel selbst aus der initrd; später startet ein Linux-Programm, das den schick animierten Ladebalken anzeigt. In den meisten Distributionen übernimmt diese Aufgabe Plymouth, früher kam gerne Usplash zum Einsatz.

Um bei Problemen wieder freie Sicht auf die Textmeldungen zu erhalten, drücken Sie die Taste [Esc]. Hilft das nichts, rufen Sie entweder im Bootmenü den Failsafe-Eintrag auf – der aber noch ein paar andere Funktionen deaktiviert – oder übergeben dem Kernel den Parameter splash=no. Bei Ubuntu muss man hingegen den Parameter splash streichen.

Ausblick auf Altlasten

Sobald Linux die Festplatte eingebunden hat, startet es dort immer das Programm init (Abbildung 11). Das wiederum klappert zahlreiche Skripte ab, die grundlegende Dienste starten, Treiber nachholen, das Netzwerk hochfahren und schließlich die grafische Oberfläche aktivieren. Unter anderem OpenSuse nutzt noch das alte System-V-Init. Das hat den Nachteil, dass es alle Dienste nacheinander startet. Ist beispielsweise das Netzwerk noch nicht einsatzbereit, dreht der Rest des Rechners Däumchen. Die designierten Nachfolger Upstart und Systemd starten hingegen viele Dienste parallel, was wiederum den Bootvorgang entsprechend beschleunigt. Was dabei genau passiert, erklären zwei weitere Artikel in den nächsten Ausgaben von LinuxUser. 

Abbildung 11: Wie <code srcset=

top zeigt, erhält init als erstes laufendes Programm die Prozess-ID 1. Es lässt sich auch nicht einfach mit dem kill-Kommando abschießen.” width=”300″ height=”203″ /> Abbildung 11: Wie top zeigt, erhält init als erstes laufendes Programm die Prozess-ID 1. Es lässt sich auch nicht einfach mit dem kill-Kommando abschießen.

Infos

[1] Neuerungen und Fallstricke in Grub 2: Andreas Bohle, “Ladehemmung”, LinuxUser 01/2010, https://www.linux-community.de/artikel/19918

[2] Advanced Programmable Interrupt Controller: http://de.wikipedia.org/wiki/Advanced_Programmable_Interrupt_Controller

[3] Wichtige Kernel-Parameter im Überblick: http://wiki.ubuntuusers.de/Booten

LinuxUser 11/2010 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben