Inhaltsverzeichnis

USB

Die erkennung von USB Speichermedien & Geräten.
Wenn ein USB-Gerät unter Linux eingesteckt wird, passiert im Hintergrund eine ganze Menge in Bruchteilen von Sekunden. Es ist eine Art „Staffellauf“ zwischen dem Kernel und verschiedenen Hintergrunddiensten (Daemons).

lsusb                           - list USB devices
 
lsblk                           - list block devices
lsblk -S
 
dmesg                           - print or control the kernel ring buffer
dmesg  | grep usb
 
udisksctl                       - The udisks command line tool
udisksctl status
 
udevadm                         - udev management tool
udevadm monitor | grep -i usb
 
journalctl                      - Print log entries from the systemd journal
journalct -f                    

Hier sind die wichtigsten Akteure, unterteilt in ihre Aufgabenbereiche:

Die Hardware-Ebene: Der Kernel

Sobald die Kontakte schließen, übernimmt der Linux Kernel.

* usbcore: Das Grundmodul, das erkennt, dass „etwas“ am Bus passiert ist. * Treiber (Modules): Der Kernel schaut nach der Vendor-ID und Product-ID und lädt den passenden Treiber (z. B. `usb_storage` für USB-Sticks oder `usbhid` für Tastaturen). * printk / dmesg: Der Kernel schreibt das Ereignis in den Ringpuffer. (Mit dem Befehl `dmesg -w` kannst du das live beobachten).

Die Schaltzentrale: udev / systemd-udevd

Dies ist das wichtigste Programm im User-Space.

* Aufgabe: Sobald der Kernel das Gerät sieht, sendet er ein „u-event“. udev fängt dieses ab. * Regeln: Es schaut in `/etc/udev/rules.d/` nach, was zu tun ist. * Gerätedateien: udev erstellt den Eintrag unter `/dev/` (z. B. `/dev/sdb1`).

Informationssammler: udisks / udisksd

Wenn es sich um ein Speichermedium handelt, kommt udisks ins Spiel.

* Es liest die Partitionstabellen aus, erkennt das Dateisystem (FAT32, NTFS, ext4) und fragt Dinge wie den Namen (Label) des Sticks ab. * Es stellt diese Infos über den D-Bus (das interne Kommunikationssystem von Linux) anderen Programmen zur Verfügung.

Die Desktop-Ebene (GUI)

Wenn du eine grafische Oberfläche nutzt (GNOME, KDE, XFCE), reagieren deren Manager:

* gvfs (GNOME Virtual File System) oder KIO (KDE Input/Output): Diese Dienste sorgen dafür, dass das Gerät tatsächlich „gemountet“ (eingebunden) wird. * Nautilus / Dolphin / Thunar: Dein Dateimanager zeigt plötzlich ein Icon für den neuen Stick an. * Notification Daemon: Das kleine Pop-up erscheint („Neues Gerät gefunden“).

Zusammenfassung des Ablaufs

Schritt Programm / Komponente Aktion
Erkennung Kernel (usbcore) Elektrisches Signal wird registriert.
Benennung udevd /dev/-Eintrag wird erstellt & Berechtigungen gesetzt.
Analyse udisksd Dateisystem und Kapazität werden geprüft.
Einbindung gvfs / mount Das Gerät wird für den Nutzer beschreibbar gemacht.
Anzeige Dateimanager Ein Fenster öffnet sich oder das Icon erscheint.
,