Linux Modul Handling

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Linux Modul Handling

Beschreibung

Kernel-Module sind Erweiterungen, die dem Kernel zusätzliche Funktionalität bieten, ohne dass ein Neustart erforderlich ist. lsmod, modinfo, modprobe, insmod und rmmod sind Werkzeuge zur Verwaltung dieser Module.

lsmod

lsmod ist ein Befehlszeilenwerkzeug, das die derzeit geladenen Kernel-Module anzeigt. Es listet alle Module auf, die in den Kernel geladen wurden, sowie Informationen zu ihrer Nutzung und Abhängigkeiten.

Alle geladenen Module anzeigen
  • lsmod
Module                  Size  Used by
sd_mod                 81920  0
scsi_mod              327680  1 sd_mod
scsi_common            16384  2 scsi_mod,sd_mod
ccm                    20480  6
snd_seq_dummy          12288  0
snd_hrtimer            12288  1
snd_seq               110592  7 snd_seq_dummy
snd_seq_device         16384  1 snd_seq
rfcomm                102400  6
...
Bestimmte Module anzeigen
  • lsmod | grep vfat
vfat                   24576  1
fat                   102400  1 vfat


modinfo

Um detaillierte Informationen über ein bestimmtes Modul zu erhalten, verwenden Sie den Befehl `modinfo` gefolgt vom Modulnamen:

  • modinfo vfat
filename:       /lib/modules/6.12.63+deb13-amd64/kernel/fs/fat/vfat.ko.xz
author:         Gordon Chaffee
description:    VFAT filesystem support
license:        GPL
alias:          fs-vfat
depends:        fat
intree:         Y
name:           vfat
retpoline:      Y
vermagic:       6.12.63+deb13-amd64 SMP preempt mod_unload modversions 
sig_id:         PKCS#7
signer:         Build time autogenerated kernel key
sig_key:        6A:D9:B3:B2:60:00:CD:B8:1B:30:E8:D4:2A:5C:7D:29:E1:3F:E1:15
sig_hashalgo:   sha256
signature:      30:65:02:30:11:0D:0A:A4:38:FD:0D:02:64:E3:27:9C:5D:81:4A:BF:
		04:CC:0A:1F:FD:CA:2D:E4:50:8B:55:17:7A:1B:85:82:36:C1:C7:8C:
		E3:00:90:C9:06:2B:F3:3D:F1:4D:1E:7E:02:31:00:B7:C4:A5:B0:E1:
		E9:ED:54:70:C1:2D:A9:4D:98:1B:D0:00:54:60:DE:08:BA:AB:84:15:
		91:C3:1E:6D:C9:4E:52:B9:81:DE:3A:AA:29:FA:E2:3F:A5:35:42:CF:
		B0:D1:76

Verwalten von Kernel-Modulen

  • Kernel-Module können mit den Befehlen `modprobe`, `insmod` und `rmmod` verwaltet werden.

modprobe

  • `modprobe` wird verwendet, um Module zu laden und zu entladen, während es automatisch Abhängigkeiten auflöst.

Modul laden

  • Beispiel: Um ein Modul zu laden, verwenden Sie:
 
 sudo modprobe modulname
 
 Beispiel:
 
 sudo modprobe nvidia
 

Modul entladen

  • Beispiel: Um ein Modul zu entladen, verwenden Sie:
 
 sudo modprobe -r modulname
 
 Beispiel:
 
 sudo modprobe -r nvidia
 

insmod

  • `insmod` wird verwendet, um ein Modul direkt zu laden, jedoch ohne automatische Auflösung von Abhängigkeiten.

Modul direkt laden

  • Beispiel: Um ein Modul direkt zu laden, verwenden Sie:
 
 sudo insmod /pfad/zum/modul.ko
 

rmmod

  • `rmmod` wird verwendet, um Module aus dem Kernel zu entfernen.

Modul entfernen

  • Beispiel: Um ein Modul zu entfernen, verwenden Sie:
 
 sudo rmmod modulname
 
 Beispiel:
 
 sudo rmmod nvidia
 

Praktische Anwendungen

  • Überwachung: `lsmod` kann verwendet werden, um zu überwachen, welche Module derzeit geladen sind.
  • Fehlerbehebung: Bei Problemen mit Hardware oder Treibern kann überprüft werden, ob die entsprechenden Kernel-Module geladen sind.
  • Systemadministration: Administratoren können sicherstellen, dass nur benötigte Module geladen sind, um Ressourcen zu sparen und die Sicherheit zu erhöhen.

Weitere Optionen

Kontinuierliche Überwachung

  • `-w` : Zeigt die Kernel-Nachrichten kontinuierlich an, ähnlich wie `tail -f`.
 
 dmesg -w
 
  • Beispiel: Um die Kernel-Nachrichten fortlaufend zu überwachen:
 
 dmesg -w
 
  • Beispiel: Um die Nachrichten für ein bestimmtes Schlüsselwort in Echtzeit zu filtern und anzuzeigen:
 
 dmesg -w | grep usb
 
  • Beispiel: Um die kontinuierliche Anzeige der Kernel-Nachrichten mit lesbaren Zeitstempeln zu sehen:
 
 dmesg -wT