Proces de boot Linux: Ce ar trebui să știți

Linux-Boot-Prozess: Was Sie wissen sollten

⌛ Reading Time: 4 minutes

Waren Sie schon einmal neugierig auf die verschiedenen Phasen von Linux, einem Open-Source-Betriebssystem? Wenn Sie den gesamten Startvorgang kennen, können Sie Probleme beheben, insbesondere wenn Sie der Administrator sind.

Was passiert hinter den Kulissen, wenn Sie Ihr Gerät einschalten? Lesen Sie weiter, um es herauszufinden.

BIOS

Das Basic Input / Output System (BIOS) ist eine Low-Level-Firmware, die auf einem kleinen Speicherchip im Motherboard Ihres Computers gespeichert ist. Diese Firmware unterstützt den Startvorgang und verwaltet den Datenfluss zwischen Ihrem Gerät und anderen angeschlossenen Geräten wie Maus, Drucker und Videoadapter.

Die oben gezeigte Hauptfunktion des BIOS besteht darin, den Selbsttest beim Einschalten (POST) auszuführen. Dieser Test überprüft die Funktionsfähigkeit der Systemhardware und ermittelt den Startsektor, der die für den Rest des Prozesses erforderliche Software enthält. Wenn der POST erfolgreich ist, lädt das BIOS den nächsten Schritt, den Stage One Boot Loader, in den RAM des Systems.

Wenn der POST nicht erfolgreich ist, gibt das BIOS einen Code zurück, den Sie zur Fehlerbehebung verwenden können.

Stage One Bootloader

Die erste Stufe des Bootloaders – Master Boot Record (MBR) oder Guided Partition Table (GPT) genannt – dient dazu, das Programm online zu schalten.

Der MBR ist eine einfache Software ohne eingebautes Verständnis für Dateisysteme. Daher müssen Sie den Bootloader der zweiten Stufe immer zwischen dem MBR und der ersten Partition auf der Festplatte speichern.

Sobald der MBR den Bootloader der zweiten Stufe erkennt, übergibt er die Kontrolle.

Stufe Zwei Bootloader

Die Aufgabe des Bootloaders der zweiten Stufe besteht darin, den Kernel zu finden und in den Speicher zu laden.

Die meisten Linux-Abteilungen verwenden einen von drei verschiedenen Bootloadern – GRUB, GRUB2 oder LIL. Sie werden höchstwahrscheinlich GRUB2 sehen, das unten abgebildet ist, da es das neueste ist.

Linux Boot Process Grub2

Sobald der Bootloader einen Kernel gefunden und in den RAM geladen hat, übergibt er die Kontrolle. Außerdem wird ein Image des Dateisystems Ihres Geräts gesendet, mit dem der Kernel Module finden kann.

Kernel

Da alle Kernel in einem komprimierten Format vorhanden sind, um Speicherplatz auf der Festplatte zu sparen, ist das erste, was nach der Steuerung ausgeführt wird, das Selbstextrahieren. Anschließend wird die Image-Version des vom Bootloader empfangenen Dateisystems bereitgestellt.

Der Kernel erkennt die Hardware des Systems und wechselt über das Image in die Stammdatei auf der Festplatte.

init (systemd)

Als nächstes startet der Kernel das Initialisierungssystem (Init) – den ersten Prozess, der alle für den Startvorgang erforderlichen Prozesse erzeugt. Auf den meisten Systemen ist dies systemd.

Die Hauptfunktion von Systemd besteht darin, alle Dämonen – Hintergrundprozesse und -dienste – zu starten, die zum Ausführen des Systems erforderlich sind. Diese Dienste werden nach der Initialisierung weiterhin ausgeführt und verwalten wichtige Systemprozesse wie das Protokollieren verschiedener Systemnachrichten, das Verfolgen von Geräten und das Synchronisieren des Dateisystems mit dem Systemspeicher.

Wenn Sie neugierig sind, welche Dienste systemd ausgeführt werden, führen Sie die aus systemctl Der Befehl selbst gibt eine vollständige Liste zurück.

Sie können systemd auch verwenden, um andere Dienste beim Booten zu starten, indem Sie eine Kombination aus dem Befehl systemctl und dem Dienst verwenden, den Sie starten möchten. Wenn das System beispielsweise den Status des NFS überprüfen soll, können Sie Folgendes eingeben systemctl status nfs-server.service. Du kannst auch start, stop, enable oder disable Ein Dienst mit einer Kombination aus systemctl und einem dieser Befehle.

Runlevel

Die Ausführungsebene ist ein Status von INIT, und Ihr System definiert, welche Dienste ausgeführt werden. Der Standard-Linux-Kernel unterstützt sieben verschiedene Runlevel:

  • 0: Systemstopp, bereit zum Ausschalten
  • 1: Einzelbenutzermodus
  • 2: Mehrbenutzermodus, kein Netzwerkdateisystem
  • 3: Mehrbenutzermodus über die Befehlslebensdauer anstelle der grafischen Benutzeroberfläche
  • 4: Benutzerdefinierte
  • 5: Mehrbenutzermodus unter Verwendung der grafischen Benutzeroberfläche, in die die meisten Linux-Systeme standardmäßig booten
  • 6: Starten Sie neu

Linux Boot Process Init Runlevel

Wenn Sie den Runlevel aus irgendeinem Grund ändern müssen, ist INIT dafür verantwortlich, ihn mithilfe von zu ändern telinit Befehl, wie oben gezeigt.

Unterbrechen des Startvorgangs

Diese Aufschlüsselung ist lediglich eine Übersicht über den Linux-Startvorgang und lässt einige der feineren Details aus. Es sollte Ihnen jedoch die Informationen geben, die Sie zur Behebung etwaiger Probleme benötigen.