Kernelmodule: Unterschied zwischen den Versionen
| Zeile 19: | Zeile 19: | ||
* Option | * Option | ||
* Skripte | * Skripte | ||
| + | |||
| + | == Modulverwaltung == | ||
| + | *Module können geladen und entladen werden mit: | ||
| + | |||
| + | modprobe [Optionen] Modulname | ||
| + | |||
| + | ;Optionen sind unter anderem: | ||
| + | |||
| + | * '''-v''': Ausführliche Ausgabe | ||
| + | * '''-n''': Simuliert das Laden des Moduls, lädt es aber nicht | ||
| + | * '''-a''': Lädt alle in der Kommandozeile angegebenen Module | ||
| + | * '''-r''': Entlädt Module | ||
| + | |||
== Installation == | == Installation == | ||
Version vom 22. Juni 2023, 14:49 Uhr
Kernelmodule
Der Linux-Kernel besitzt grundsätzlich einen monolithischen Aufbau, bietet jedoch auch die Möglichkeit, Module zur Laufzeit zu laden und zu entladen. Ein Kernelmodul ist im Allgemeinen ein Teil oder eine Erweiterung des Kernels. Beispielsweise sind alle Hardwaretreiber (wie WLAN-Karte, Soundkarte usw.) als Modul angelegt. Die meisten Linux-Distributionen, einschließlich Ubuntu, machen starken Gebrauch von Kernelmodulen, um die bestmögliche Hardwarekompatibilität mit nur einem "allgemeinen" Kernel zu erreichen. In der Regel werden alle notwendigen Module beim Systemstart und falls nötig zur Laufzeit geladen, sodass der Nutzer sich nicht weiter darum kümmern muss.
Inhaltsverzeichnis
- Installation
- Tools
- Ort, wo die Module des laufenden Kernels liegen
- Geladene Module anzeigen
- Information anzeigen
- Übersicht über alle Module
- Module laden/entladen
- modprobe
- Optionen
- Dateien
- Abhängigkeiten von Modulen
- Module automatisch laden
- Automatisches Laden verhindern - Blacklisting
- Aliases
- Option
- Skripte
Modulverwaltung
- Module können geladen und entladen werden mit:
modprobe [Optionen] Modulname
- Optionen sind unter anderem
- -v: Ausführliche Ausgabe
- -n: Simuliert das Laden des Moduls, lädt es aber nicht
- -a: Lädt alle in der Kommandozeile angegebenen Module
- -r: Entlädt Module
Installation
Die Programme zum Umgang mit den Modulen sollten in der Standardinstallation enthalten sein, können aber ansonsten über das Paket module-init-tools installiert werden.
Tools
Verschiedene Kommandos bieten unterschiedliche Funktionalitäten:
- lsmod: Zeigt geladene Module an
- modprobe: Universelles und mächtiges Werkzeug zum Entladen und Laden von Modulen
- rmmod: Einfaches Tool zum Entfernen von Modulen
- insmod: Einfaches Tool zum Installieren von Modulen
- depmod: Erstellt Dateien zur Auflösung von Modulabhängigkeiten
- modinfo: Informationen über Module
Ort, wo die Module des laufenden Kernels liegen
- Die Module des aktuellen Kernels befinden sich im Verzeichnis /lib/modules/$(uname -r).
- find /lib/modules/$(uname -r) -name "*.ko"
Geladene Module anzeigen
- Mit dem Befehl lsmod kann man die aktuell geladenen Module anzeigen lassen.
- lsmod
Information anzeigen
- Mit dem Befehl modinfo kann man Informationen zu einem bestimmten Modul anzeigen lassen.
- modinfo usb_common
Module laden/entladen
- Mit dem Befehl modprobe können Module zur Laufzeit geladen oder entladen werden. Modprobe löst dabei automatisch Abhängigkeiten auf.
- modprobe -v usb_common
Abhängigkeiten von Modulen
- Manche Module können erst genutzt bzw. geladen werden, wenn andere Module geladen sind, da sie von diesen abhängen.
- Diese Abhängigkeiten sind in der Datei /lib/module/<Kernelversion>/modules.dep hinterlegt.
- depmod -a
Module automatisch laden
Möchte man ein Modul, welches der Kernel nicht automatisch mit lädt, beim Systemstart automatisch laden, so trägt man den Modulnamen einfach in die Datei /etc/modules ein.
== Automatisches Laden verhindern - Blacklisting