Linux bietet bus- und subsystembezogene Inventarwerkzeuge. Jeder Befehl zeigt eine andere Ansicht. Verknüpfe deshalb Kennungen, Topologie, Treiber, sysfs-Pfade und Protokolle, statt von einer einzigen vollständigen Hardwareliste auszugehen.
Geräte · Lektion 6
lsusb, lspci, lsscsi
Lerne, USB-Topologie, PCI-Funktionen, Geräte der SCSI-Schicht und ihre aktiven Treiber zu untersuchen.
USB-Geräte untersuchen
lsusb listet Geräte auf, die über das USB-Subsystem sichtbar sind:
$ lsusb
Die Ausgabe enthält normalerweise Bus- und Gerätenummer, ein Paar aus Hersteller- und Produktkennung sowie eine Beschreibung aus der lokalen USB-ID-Datenbank. Die numerische Bus-/Geräteadresse kann sich nach dem erneuten Anschließen oder Neustarten ändern und darf nicht als dauerhafte Identität behandelt werden.
Zeige Beziehungen zwischen Controller, Hub, Port, Schnittstelle, Treiber und Geschwindigkeit an:
$ lsusb -t
Eine ausführliche Ausgabe der Deskriptoren ist verfügbar, doch manche Angaben erfordern erhöhte Leseberechtigungen. Vergib keine umfassenden USB-Geräteberechtigungen, nur damit ein Untersuchungsbefehl weniger Meldungen ausgibt.
Welcher Befehl zeigt USB-Geräte als Topologiebaum an?
PCI-Funktionen untersuchen
lspci listet Funktionen auf, die auf PCI- und PCI-Express-Bussen erkannt wurden:
$ lspci
Interne und extern angeschlossene PCIe-Geräte können Grafik-, Netzwerk-, Speicher-, USB-, Audio- und Bridge-Controller umfassen. Zeige den verwendeten Kernel-Treiber und infrage kommende Module an:
$ lspci -k
Das Erscheinen eines PCI-Controllers in dieser Liste beweist nicht, dass jedes dahinterliegende Gerät initialisiert oder funktionsfähig ist. Prüfe bei der Fehlersuche die Treiberbindung und Kernel-Protokolle.
Welcher Befehl ergänzt eine PCI-Auflistung um Kernel-Treiberinformationen?
Geräte der SCSI-Schicht untersuchen
lsscsi listet Geräte auf, die über die mittlere SCSI-Schicht von Linux dargestellt werden:
$ lsscsi
Dazu können echte SCSI-Geräte sowie SATA-, USB-Speicher- oder virtuelle Datenträger gehören, die über SCSI-kompatible Schichten bereitgestellt werden. NVMe-Namespaces gehören normalerweise zu einem anderen Subsystem und werden von lsscsi nicht vollständig inventarisiert.
Verwende für eine speicherbezogene Hierarchie mit vielen Blockgerätetypen zusätzlich lsblk:
$ lsblk -o NAME,TYPE,SIZE,MODEL,SERIAL,TRAN,FSTYPE,MOUNTPOINTS
Was listet lsscsi in erster Linie auf?
Inventarergebnisse auswerten
Beschreibungen stammen häufig aus lokalen ID-Datenbanken und können allgemein oder veraltet sein. Ein aufgelistetes Gerät kann ohne funktionierenden Treiber sein, und eine virtualisierte Umgebung kann emulierte oder paravirtuelle Hardware bereitstellen. Gleiche die Ergebnisse abhängig von Berechtigungen und Fragestellung mit udevadm info, sysfs, lsblk, Netzwerkwerkzeugen und journalctl -k oder dmesg ab.
Die Dienstprogramme können getrennt paketiert sein, üblicherweise in Paketen wie usbutils, pciutils und lsscsi. Fehlt ein Befehl, installiere ihn über den Paketmanager der Distribution, statt unbekannte Ersatzprogramme herunterzuladen.
Beweist das Erscheinen eines Geräts in lspci, dass sein Treiber aktiv ist und richtig funktioniert?
Nutze das Lab Hardwaregeräte unter Linux erkunden, um diese Subsystemansichten auf einem kontrollierten Host zu vergleichen.
Lektion abgeschlossen
Sie haben lsusb, lspci, lsscsi abgeschlossen
Du kannst nun einen Inventarbefehl passend zum betreffenden Gerätesubsystem auswählen.
Verwende
lsusbundlsusb -tfür USB-Identität und -Topologie.Verwende
lspci -kfür PCI-Funktionen und Treiberbindung.Verwende
lsscsifür Geräte der SCSI-Schicht undlsblkfür die Blocktopologie.Gleiche die Aufzählung mit Treibern, sysfs und Kernelmeldungen ab.
Lernfortschritt speichern
Erstellen Sie ein kostenloses Konto, um diese Lektion zu speichern und auf jedem Gerät weiterzulernen.
Kostenloses Konto erstellen