Die Linux Kernel geladen Gerätetreiber und ist der Kern des Betriebssystems, in allen Linux-Versionen . Gerätetreiber werden automatisch für die unterstützten Hardware in den meisten APT- und RPM - basierten Distributionen geladen. Wenn Ihre Hardware nicht automatisch geladen und der Hersteller bietet einen Gerätetreiber , können Sie es manuell zu installieren. Zusammengestellt Module geladen werden kann und hinzugefügt, um die Kernel-Konfiguration sofort . Quellcode muss zuerst kompiliert mit den Kernel-Header oder vollständigen Quellcode werden. Anleitung
Kompilieren eines Moduls
1
Laden Sie den Quellcode für den Kernel -Modul
2
Geben Sie den folgenden Befehl in einem Terminal-Fenster , um die Kernel-Header installieren. :
RPM -basierten Distributionen : su -c ' yum install kernel-devel '
aPT -basierten Distributionen : sudo apt- get install linux- headers- $ ( uname -r)
< p > Verwenden Sie den richtigen Befehl für Ihre Version von Linux . Achten Sie darauf, die Befehle genau wie gezeigt , darunter einfache Anführungszeichen eingeben
3
Geben Sie den folgenden Befehl ein, um das Verzeichnis des Quellcodes ändern: .
Cd /home . /myuser /modulecode
Change " /home /myuser /modulecode " an die Stelle des Moduls Quellcode
4
Geben Sie den folgenden Befehl, um eine " makefile : " erstellen
vi Makefile
Dies öffnet den Texteditor vi und schafft das Makefile . Die "make" -Befehl verwendet das Makefile , um das Modul zu kompilieren
5
Geben Sie die folgenden sechs Zeilen Code im Texteditor : .
Obj - m = mymodule.o
KVERSION = $ (shell uname -r)
alle :
make-C /lib /modules /$ ( KVERSION ) /build M = $ ( PWD) Module
clean:
make-C /lib /modules /$ ( KVERSION ) /build M = $ ( PWD) sauber
Ersetzen " mymodule " mit dem Namen des Moduls Sie ' neu kompilieren . Speichern Sie die Datei und verlassen Sie vi
6
Geben Sie den folgenden Befehl , um das Modul zu kompilieren: .
Machen
7
Geben Sie die folgenden Befehle zum Laden und entfernen Sie das Modul :
Last: su -c ' insmod mymodule.ko '
entladen : su -c ' rmmod mymodule '
Ersetzen " mymodule " mit dem Namen des wobei das Modul geladen oder entladen
Loading Module automatisch beim Start
8
Geben Sie den folgenden Befehl in einem Terminal-Fenster : .
su -c ' mkdir -p /lib /modules /$ ( uname -r) /kernel /drivers /mymodule '
Ersetzen " mymodule " mit dem Namen des Moduls. Dieser Befehl erstellt ein Verzeichnis , um das Modul zu speichern
9
Geben Sie den folgenden Befehl , um das Modul in das neue Verzeichnis kopieren : .
Su -c ' cp /modulepath /mymodule.ko /lib /modules /$ ( uname -r) /kernel /drivers /mymodule /'
Ersetzen " modulepath " und " mymodule " mit dem richtigen Pfad und Modulnamen .
10
Geben Sie den folgenden Befehl ein:
su -c ' vi /etc /modules'
Dieser Befehl öffnet die systemweite Konfiguration des Moduls Datei zur Bearbeitung
11
Fügen Sie die folgenden am Ende der Datei :
mymodule
Ersetzen " mymodule " mit dem Namen des Moduls. Speichern und schließen Sie die Datei. Die Änderungen werden beim nächsten Neustart des Systems . Es wird nicht mehr notwendig sein, manuell be-und entladen das Modul.