GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So installieren Sie Kernel-Header unter Debian

Kernel-Header enthalten die C-Header-Datei für den Linux-Kernel, die die verschiedenen Funktionalitäts- und Strukturdefinitionen bereitstellt, die beim Kompilieren von Code erforderlich sind, der mit dem Kernel interagiert, wie z. B. Kernel-Gerätetreiber oder -Module und einige andere Benutzerprogramme.

Im Allgemeinen sind Linux-Kernel-Header Komponenten, die normalerweise verwendet werden, um Treiber und ladbare Module zu kompilieren, die Unterstützung an den Kernel anhängen. Es ist auch wichtig, die Tatsache zu beleuchten, dass die Kernel-Header Teil des Kernels sind, obwohl sie separat verteilt werden.

Eine weitere wichtige Sache, die zu beachten ist, ist, dass das Kernel-Header-Paket mit der aktuell installierten Kernel-Version Ihres Systems übereinstimmen muss. Angenommen, Sie haben eine Kernel-Version mit der Standard-Distributionsinstallation oder Sie haben Ihren Kernel über dpkg oder apt-Paketmanager von Debian-Basisrepos aktualisiert. In diesem Fall müssen Sie übereinstimmende Kernel-Header nur mit dem Paketmanager einrichten. Wenn Sie andererseits Kernel aus Quellen kompiliert haben, sollten Sie auch Kernel-Header aus Quellen einrichten.

Nachdem wir diese Informationen durchgegangen sind, wenden wir uns nun dem Kernteil des Artikels zu, der erklärt, wie Kernal-Header unter Linux installiert werden, insbesondere in der Debian-Linux-Distribution unter Verwendung des Standardpaketmanagers.

Wie installiert man Kernel-Header in Debian

Schritt 1: Das Wichtigste zuerst, bevor Sie die Dinge starten, müssen Sie sich als Root-Benutzer anmelden, indem Sie den folgenden Befehl ausführen:

su

Geben Sie danach das Passwort Ihres PCs ein und Sie sollten als Root-Benutzer angemeldet sein, wie im obigen Schnappschuss gezeigt.

Schritt 2: Als Nächstes überprüfen wir die bereits installierte Kernel-Version und das Header-Paket, das Ihrer Kernel-Version entspricht, mit den folgenden Befehlen:

uname -r

apt search linux-headers-$(uname -r)

Schritt 3: Auf alle Kernel-Header-Dateien kann unter /usr/src zugegriffen werden Verzeichnis auf Debian und seinen Derivaten. Sie haben auch die Möglichkeit zu prüfen, ob die übereinstimmenden Kernel-Header für Ihre Kernel-Versionen bereits auf Ihrem System installiert sind oder nicht, indem Sie den folgenden Befehl verwenden:

ls -l /usr/src/linux-headers-$(uname -r)

Aus der obigen Ausgabe geht hervor, dass das passende Kernel-Header-Verzeichnis nicht existiert, was bedeutet, dass das Paket noch nicht installiert ist.

Schritt 4: Stellen Sie vor der Installation der Kernel-Header sicher, dass Sie die Indexliste Ihres Pakets aktualisieren, um die Informationen über die neuesten Versionen mit dem folgenden Befehl abzurufen:

sudo apt update

Schritt 5: Nach dem Ausführen des Update-Befehls sollten Sie benachrichtigt werden, wenn Pakete vorhanden sind, die aktualisiert werden müssen. Wenn dies der Fall ist, führen Sie den folgenden Befehl aus. andernfalls überspringen Sie diesen Teil.

sudo apt upgrade

Schritt 6: Fahren Sie dann fort und führen Sie den folgenden Befehl aus, um das Linux-Kernel-Header-Paket für Ihre Kernel-Version zu installieren

sudo apt install linux-headers-$(uname -r)

Hinweis: Sie werden zu einem bestimmten Zeitpunkt während der Installation aufgefordert, Ihre Entscheidung zu bestätigen, mit der Installation fortzufahren. Sie müssen lediglich „y/Y“ eingeben und drücken Sie die "Enter" oder drücken Sie die "Enter"-Taste Knopf allein, und das sollte funktionieren.

Schritt 7: Überprüfen Sie als Nächstes, ob Sie die passenden Kernel auf Ihrem System installiert haben, indem Sie den folgenden Befehl verwenden:

ls -l /usr/src/linux-headers-$(uname -r)

Führen Sie den folgenden Befehl aus, um alle verfügbaren Header aufzulisten:

sudo apt search linux-headers

Nachdem Sie dann Debian 11 x64 oder die zweite Methode verwendet haben, um den Header zu finden, können Sie alternativ den folgenden Befehl ausführen, um den Header zu installieren.

sudo apt install linux-headers-5.10.0-10-amd64

Häufig gestellte Fragen zu Linux-Headern

Wo sind Linux-Header?

Linux-headers ist ein Paket, das die Linux-Kernel-Header bereitstellt. Diese sind Teil des Kernels, obwohl sie separat geliefert werden. Sie bilden die Schnittstelle zwischen internen Komponenten, Userspace und dem Kernel.

Benötigen Sie Linux-Header?

Sie benötigen die Linux-Header, wenn Sie planen, auf Ihrem installierten Rechner Debian zu entwickeln und zu kompilieren. Wenn Sie beispielsweise eine Appliance für eine bestimmte Aufgabe bauen, sind Sie wahrscheinlich nicht bereit, darauf zu kompilieren. Angenommen, Sie müssen Ihre App kompilieren; Sie werden dies auf einem anderen System tun.

Wie man Header in Unix anzeigt

Wir verwenden od -bc {Dateiname} | Kopf  um sich den Header einer Binärdatei anzusehen. Sehen Sie sich auch die Arbeit an, aber es ist natürlich besser, die Ausgabe direkt auf der Befehlszeile zu sehen.

Woher weiß ich, ob die Kernel-Header installiert sind

Sie können das Software Center oder Synaptic öffnen und sicherstellen, dass das Paket „Linux-headers-generic“ installiert ist. Dieses Paket ist abhängig von den Headern für die neueste verfügbare Kernel-Version markiert, so dass es ein oder zwei weitere Pakete speziell für Sie einzieht.

Müssen Sie Kernel-Header mit Ihrer Kernel-Version synchronisieren?

Die Antwort ist nein. Sie können eine neuere Linux-Header-Version als Ihre laufende Kernel-Binärdatei haben. Wenn Sie beispielsweise Kernel 4.1 eingerichtet haben, können Sie Linux-Header 4.4 haben. Wenn Sie Ihre Glibc mit diesen neueren Headern kompilieren und später auf Kernel 4.4 aktualisieren, können Sie die neuen Funktionen dieses Kernels nutzen, ohne Glibc neu zu kompilieren.

Warum brauchen wir Header in Linux?

Die Header-Dateien erläutern eine Schnittstelle:Sie geben an, wie die Funktionen in der Quelldatei definiert sind. Sie werden verwendet, damit ein Compiler überprüfen kann, ob die Verwendung einer Funktion korrekt ist, da die Funktionssignatur (Rückgabewert und Parameter) in der Header-Datei vorhanden ist.

Abschließende Gedanken

Wie Sie sehen können, ist die Installation von Linux-Kernel-Headern auf Debian für jeden Linux-Benutzer, sei es ein Neuling, ein Vermittler oder ein Experte, super einfach. Darüber hinaus sollte jeder Linux-Benutzer zumindest die Funktionalität von Kernel-Headern kennen und wissen, wie man sie installiert. Sie müssen auch scharf auf die Kernel-Header sein, die Sie herunterladen, da sie mit Ihrem System kompatibel sein sollten, nicht nur die Architektur, sondern auch die Version. Denken Sie auch daran, dass Sie die Linux-Kernel-Header benötigen, um ein Kernel-Modul zu kompilieren.


Debian
  1. So installieren Sie Debian 10 (Buster)

  2. So installieren Sie Python 3.9 unter Debian 10

  3. So installieren Sie Memcached unter Debian 10

  4. So installieren Sie TeamViewer unter Debian 10

  5. So installieren Sie Git unter Debian 9

So installieren Sie Skype unter Debian 9

So installieren Sie R unter Debian 10

So installieren Sie Debian 11

So installieren Sie Go unter Debian 10

So installieren Sie den Linux-Kernel 5.15 unter Debian 11

So installieren Sie Go unter Debian