Ich möchte wissen, wie LINUX funktioniert!

PC20171027neko_TP_V.jpg

Ich denke, es gibt Leute, die LINUX in LPIC-Prüfungen und in der eigentlichen Arbeit kennenlernen wollen oder müssen. Wenn ich es jedoch nachschlage, sagen einige Leute vielleicht: "Ich habe versucht, Befehle und Wörter nachzuschlagen, aber am Ende ist es kompliziert und ich verstehe nicht?" (Ich wurde). Dies ist ein Artikel für diejenigen, die wissen möchten, wie LINUX einfach funktioniert!

Um zu wissen, wie LINUX funktioniert, ist es effektiv, Ihr Verständnis des Startprozesses von LINUX zu vertiefen. Der Grund dafür ist, dass das am Startvorgang beteiligte System das System ist, auf dem LINUX ausgeführt wird, und bei der Ausführung von LINUX dreht sich alles um LINUX. Wenn Sie beispielsweise den Autoschlüssel drehen, um zu wissen, wie das Auto funktioniert und wie der Motor gestartet wird, können Sie Ihr Verständnis für die Funktionsweise des Autos vertiefen. Wenn Sie sich mit der LINUX-Engine auskennen, wissen Sie, was LINUX kann!

Positionierung von LINUX

In Bezug auf die Position von LINUX unter vielen Betriebssystemen ist LINUX eine Art Betriebssystem, das als UNIX-basiertes Betriebssystem bezeichnet wird. Die Version von LINUX ist in der Form eines Distributors verzweigt, aber dieser LINUX-Kernel (die Quelle des Betriebssystems) wurde weithin als Open Source veröffentlicht und das Betriebssystem wurde von verschiedenen Personen entwickelt. .. Als Ergebnis wurden verschiedene Zweige wie das Debian-System, das Ubuntu-System und das Modesystem geboren. (Dieses System Grob geteilt, ist es in eine kostenlose Version und eine kostenpflichtige Version unterteilt, CentOS ist kostenlos und Red Hat ist berühmt für kostenpflichtige Versionen.

Linux-Boot-Prozess

Die folgende Tabelle zeigt den Ablauf des Linux-Startvorgangs vom Einschalten des Netzschalters bis zur Eingabe von Befehlen.

1.Ein
2.Firmware booten
3.Die Firmware lädt den Bootloader
4.Der Bootloader ist ein Kernel- und Dateisystem-Image(initramfs)Lesen
5.Bootloader führt den Kernel aus
6.Der Kernel ist ein Dateisystem-Image(initramfs)Lauf
7.Kernel init(Oder systemd)Starten und mounten Sie das Root-Dateisystem
8.Kernel init(Oder systemd)Lauf

1. Einschalten

Wenn Sie das Gerät einschalten, wird die auf dem Terminal eingravierte Firmware gestartet. Die bekannte Firmware verfügt über BIOS (Boot Input / Output System) und UEFI (Unified Extendable Farmware Interface), und der Typ des Bootloaders, der von jeder Firmware verarbeitet wird, ändert sich.

2. Starten Sie den Bootloader

Die Firmware lädt zuerst den oben auf der Festplatte gespeicherten Bootloader und bereitet den Start von LINUX vor. Wenn es sich um ein BIOS handelt, wird zu diesem Zeitpunkt eine Image-Datei generiert und erweitert. Wenn es sich um UEFI handelt, wird die gespeicherte EFI-Datei gelesen und gestartet. Was zu diesem Zeitpunkt gestartet wird, heißt GRUB2 (GRand Unified Bootloader). (Es ist mit 2 verbunden, weil es die zweite Generation ist)

3. Booten des Kernels und des Root-Dateisystems

Der Bootloader lädt den LINUX-Kernel (vmlinuz) und das Dateisystem-Image (initramfs). vmlinuz ist ein seltsamer Name, aber das Akronym ist VM von Virtual Machine, und es scheint, dass das Ende z ist, weil es eine komprimierte Datei ist und x von Linux in z geändert wird. Nach dem Ausführen des Kernels und dem Bereitstellen des Dateisystemabbilds vom Bootloader wird davon ausgegangen, dass das Root-Dateisystem verfügbar ist. Der Kernel startet den Benutzerprozess.

4. Starten Sie den Benutzerprozess

Nach allen Vorbereitungen ruft der Kernel schließlich seinen eigenen Prozess auf (inti oder systemd). Starten Sie zu diesem Zeitpunkt Linux im Startmodus, der der Ausführungsstufe oder dem Ziel entspricht. Nach dem Booten wird die Kontrolle wieder an den Benutzer zurückgegeben und Sie können Linux bedienen.

Erklärung detaillierter Wörter

Firmware: Ein System, das Linux von der Hardwareseite aus startet Bootloader: Derjenige, der Linux umwirft Kernel: Linux-Seed initramfs: Oberseite des Dateisystems, Oberseite des Dateisystems Benutzerprozess: Init oder systemd, Benutzeroperation selbst Run Level: GUI, CGI oder Notfallmodus ist nach Level unterteilt

Zugehörige Dateien

Bootloader- und Kernel-Einstellungen für das Booten von Linux befinden sich an bestimmten Speicherorten.

◇ Bootloader (GRUB2: GRandUnifiedBootloader2)

Körperdatei Boot.img und core.img (* keine Image-Datei) für das BIOS (Basic Input / Output System)

Unterschied zwischen Init und Systemd

Weitere Informationen finden Sie unter diese Site. Grob gesagt ist systemd ein aufwärtskompatibles System, das init gewachsen ist. Es ist bequemer und verantwortungsbewusster! In Bezug auf bestimmte Funktionen werden Prozesse, die in der Init-Ära separat verwaltet wurden, jetzt von Einheit zu Einheit verwaltet. Durch die Verwaltung dieses Prozesses von Einheit zu Einheit kann jeder Dienst stabil betrieben werden. (Einfach zu starten und zu stoppen)

Referenz

Ich habe es mit Bezug auf das folgende Buch geschrieben. Wenn Sie es mit Plus Alpha im Detail sehen möchten, können Sie es aufnehmen und wie ein Wörterbuch verwenden ☺

・ [Linux-Lehrbuch LPIC Level 1 Speed Master Problem Collection Version 5.0 kompatibel](https://www.amazon.co.jp/gp/product/B07TVTKW2C/ref=as_li_tl?ie=UTF8&camp=247&creative=1211&creativeASIN=B07TVTKW2C&linkC = vk4268370f-22 & linkId = 8965e118505185053b84e77611a602dc)

Recommended Posts

Ich möchte wissen, wie LINUX funktioniert!
Ich möchte Linux auf dem Mac verwenden
Ich möchte die Eingabe / Ausgabe von Dateien unter Linux protokollieren
weniger Befehl Ich möchte mich definitiv an diesen [Linux-Befehl] erinnern.
Ich möchte SUDOKU lösen
Ich habe versucht, Linux wieder einzuführen
Ich möchte OpenJDK 11 mit Ubuntu Linux 18.04 LTS / 18.10 verwenden
Ich wusste nicht, wie ich die [Python] für die Anweisung verwenden sollte
Ich möchte die Natur von Python und Pip kennenlernen
Ich möchte die Legende der IT-Technologiewelt kennenlernen
Ich möchte systemd grob verstehen
So installieren Sie VMware-Tools unter Linux
So installieren Sie MBDyn (Linux Ubuntu)
Wichtige Operationen, die Sie wissen möchten
Ich möchte Bilder kratzen und trainieren
Ich möchte ○○ mit Pandas machen
So überprüfen Sie die Linux-Betriebssystemversion
Ich möchte Yolos Anmerkung kopieren
Ich möchte mit Python debuggen
Ich möchte das Wetter mit LINE bot feat.Heroku + Python wissen
Ich möchte Shortcut-Übersetzungen wie die DeepL-App auch unter Linux verwenden
Ich möchte wissen, ob Sie Python auf Mac ・ Iroha installieren
Ich weiß nicht, wie ich Abfrageparameter in GAE / P erhalten soll
Ich möchte die Bevölkerung jedes Landes der Welt kennenlernen.
[Für Black-Screen-Phobie] Ich möchte etwas über Linux und Shells wissen, deshalb habe ich sie lose illustriert.
So überprüfen und ändern Sie Linux-Berechtigungen (chmod) (chmod) (Ich möchte bei Verweigerung von Permiss gespeichert werden)
Ich möchte Spyder an die Taskleiste anheften
Ich möchte Objekte mit OpenCV erkennen
[Linux] Unterteilen von Dateien und Ordnern
Ich möchte kühl auf die Konsole ausgeben
So installieren Sie das aws-session-manager-Plugin unter Manajro Linux
Ich möchte in der Einschlussnotation drucken
Ich möchte sie alle zusammen kratzen.
Ich möchte mit dem Reim Teil1 umgehen
Ich möchte einen Blog mit Jupyter Notebook schreiben
Ich möchte mit dem Reim part3 umgehen
Ich möchte ein Glas aus Python verwenden
[Linux] Verwendung des Befehls echo
Ich möchte eine Python-Umgebung erstellen
Ich möchte eine Pip-Installation mit PythonAnywhere durchführen
So aktualisieren Sie PHP unter Amazon Linux 2
Ich möchte Protokolle mit Python analysieren
So zeigen Sie Piktogramme unter Manjaro Linux an
Ich möchte mit aws mit Python spielen
So installieren Sie Pakete unter Alpine Linux
So bedienen Sie Linux von der Konsole aus
Ich möchte IPython Qt Console verwenden
So installieren Sie das Windows-Subsystem für Linux
So schalten Sie Linux unter Ultra96-V2 aus
So aktualisieren Sie die Sicherheit unter CentOS Linux 8
Ich möchte den Fortschrittsbalken anzeigen
Ich möchte ein Automatisierungsprogramm erstellen!
Wie installiere ich php7.4 unter Linux (Ubuntu)
Ich möchte Matplotlib in PySimpleGUI einbetten
So finden Sie große Dateien unter Linux
Ich möchte mit dem Reim part2 umgehen
Ich möchte Android-Apps auf Android entwickeln