Introduzione
Il lspci
(list PCI) Il comando Linux visualizza le informazioni su ciascun bus PCI sul sistema. Ciò include informazioni sui dispositivi collegati al sottosistema PCI.
In questo tutorial tratteremo lspci
sintassi dei comandi e mostra diversi modi per utilizzarla.
Prerequisiti
- Un sistema che esegue una distribuzione Linux.
- Accesso a un account con privilegi sudo.
- Accesso alla finestra del terminale o alla riga di comando.
Come installare lspci
Inizia aggiornando il repository di sistema all'ultima versione:
sudo apt update
Il lspci
il comando fa parte di pciutils pacchetto. Pciutil è incluso nella maggior parte delle distribuzioni Linux per impostazione predefinita.
Se vuoi installare pciutils pacchetto manualmente, usa uno dei seguenti comandi, a seconda della tua distribuzione Linux:
- Ubuntu/Debian:
sudo apt install pciutils
- RedHat/CentOS:
sudo yum install pciutils
- Fedora:
sudo dnf install pciutils
- Arch Linux:
sudo pacman -S pciutils
Sintassi del comando lspci
Il lspci
comando utilizza la seguente sintassi:
lspci [options]
Utilizzando il lspci
comando senza alcuna opzione produce un output simile al seguente:
Prendiamo la prima riga dell'output:
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
L'output sopra contiene le seguenti sezioni:
00:00.0
- Il numero del bus, il numero del dispositivo e il numero della funzione, in quest'ordine.Host bridge:
- Classe dispositivo.Intel Corporation
- Fornitore del dispositivo.440FX - 82441FX PMC
- Nome dispositivo.[Natoma]
- Modalità di funzionamento.(rev 02)
- Numero di revisione.
Opzioni comando lspci
Il lspci
comando utilizza le seguenti opzioni:
Opzione | Descrizione |
---|---|
-m | Visualizza l'output in un formato leggibile dalla macchina compatibile con le versioni precedenti. |
-mm | Visualizza l'output in un formato leggibile dalla macchina per una facile analisi da parte degli script. |
-t | Visualizza l'output come diagramma ad albero. |
-v | Visualizza una versione dettagliata dell'output. |
-vv | Visualizza una versione molto dettagliata dell'output. |
-vvv | Visualizza tutte le informazioni disponibili nell'output. |
-k | Mostra i driver e i moduli del kernel che gestiscono ogni dispositivo. |
-x | Visualizza la parte standard dello spazio di configurazione in formato esadecimale. |
-xxx | Visualizza l'intero spazio di configurazione PCI in formato esadecimale. |
-xxxx | Visualizza lo spazio di configurazione PCI esteso in formato esadecimale. |
-b | Mostra numeri e indirizzi visti dalle carte invece che dal kernel. |
-D | Mostra sempre i numeri di dominio PCI. |
-P | Identifica i dispositivi PCI in base al percorso attraverso ciascun bridge anziché in base al numero di bus. |
-PP | Identifica i dispositivi PCI in base al percorso attraverso ciascun bridge, mostrando sia il bus che il numero del dispositivo. |
-n | Visualizza i codici del fornitore e del dispositivo PCI come numeri. |
-nn | Visualizza i codici del fornitore e del dispositivo PCI sia come numeri che come nomi. |
-q | Utilizzare DNS per interrogare il database centrale dell'ID PCI se un dispositivo non viene trovato nel file pci.ids locale e salvare il risultato nella cache locale. |
-qq | Utilizzare DNS per interrogare il database centrale dell'ID PCI se un dispositivo non viene trovato nel file pci.ids locale e reimpostare la cache locale. |
-Q | Utilizzare DNS per interrogare il database centrale degli ID PCI anche se viene trovato un dispositivo nel file pci.ids locale. |
-s | Mostra solo i dispositivi in un dominio specifico. |
-d | Mostra solo i dispositivi con il fornitore, il dispositivo e l'ID classe specificati. |
-i | Legge le informazioni sull'ID PCI da un file definito dall'utente. |
-p | Usa un file personalizzato per mappare gli ID PCI gestiti dai moduli del kernel. |
-M | Esegui una scansione approfondita di tutti i dispositivi PCI. |
--version | Visualizza la versione corrente del comando. |
-A | Seleziona un metodo di accesso PCI personalizzato. |
-O | Imposta un parametro personalizzato per la libreria PCI. |
-H1 | Utilizza l'accesso hardware diretto tramite il meccanismo di configurazione Intel 1. |
-H2 | Utilizza l'accesso hardware diretto tramite il meccanismo di configurazione Intel 2. |
-F | Utilizza un file di testo come elenco di dispositivi PCI. |
-G | Aumenta il livello di debug della libreria PCI. |
Esempi lspci
Di seguito sono riportati alcuni modi per visualizzare le informazioni sul dispositivo PCI utilizzando lspci
comando.
Visualizza le informazioni PCI in un formato leggibile dalla macchina
Usa il -mm
opzione per visualizzare le informazioni PCI in un formato leggibile dalla macchina:
lspci -mm
Questo formato di output aggiunge virgolette doppie ("
) attorno a ciascuna categoria di informazioni, semplificando il passaggio dei dati a uno script di shell.
Visualizza le informazioni PCI come un diagramma ad albero
Usando il -t
l'opzione mostra i numeri di bus, dispositivo e funzione in un diagramma ad albero, mostrando come sono collegati:
lspci -t
Visualizza le informazioni PCI in un formato dettagliato
Il lspci
comando consente di impostare il livello di dettaglio da mostrare nell'output. Usando il -v
l'opzione mostra l'output in un formato dettagliato, con informazioni approfondite su tutti i dispositivi:
lspci -v
Il -vv
l'opzione mostra l'output molto dettagliato:
lspci -vv
Il -vvv
l'opzione mostra il livello di dettaglio più alto nell'output:
lspci -vvv
Visualizza le informazioni PCI nel formato Tag:Valore
La combinazione dei formati dettagliato e leggibile dalla macchina mostra l'output nel tag:value formato:
lspci -vmm
Il tag:valore formato elenca i dispositivi PCI in un formato simile a JSON, rendendo le informazioni più facili da leggere. Ogni dispositivo è una sezione separata, con le informazioni visualizzate su più righe:
Visualizza le informazioni PCI per un dispositivo specifico
Usando il -s
l'opzione ti consente di visualizzare le informazioni per un dispositivo fornendo il bus, il dispositivo e il numero di funzione:
lspci -s [bus number]:[device number].[function number]
Ad esempio, mostrando le informazioni per il dispositivo alle 00:00.0 :
lspci -s 00:00.0
Un altro metodo consiste nell'utilizzare il fornitore e il codice del dispositivo con il -d
opzione:
lspci -d [vendor code]:[device code]
Ad esempio, cercando lo stesso dispositivo di cui sopra, questa volta con il fornitore e il codice del dispositivo:
lspci -d 8086:1237
Visualizza codici dispositivo
Usando il -n
l'opzione mostra il fornitore e il codice del dispositivo per ogni dispositivo PCI:
lspci -n
Il -nn
l'opzione visualizza sia il fornitore che i codici del dispositivo e i nomi dei dispositivi, facilitando la lettura dell'output:
lspci -nn
I codici fornitore e dispositivo sono visualizzati tra parentesi alla fine di ogni voce:
Visualizza i driver del kernel
Usando il -k
l'opzione mostra una versione più dettagliata dell'output, inclusi i driver e i moduli del kernel attualmente in uso:
lspci -k