Mateus Müller

O carinha do Linux

16 jan. 2019

lspci: Informações do BARRAMENTO PCI no Linux

É da suma importância para a administração do sistema Linux como um todo, bem como para os estudos para as certificações Linux, que você saiba identificar e analisar **informações do barramento PCI no Linux.**Neste artigo, vamos abordar um pouco mais afundo sobre o comando lspci.

O comando lspci é utilizado para obter informações de todos os dispositivos que enviam informações pelo barramento PCI, isto é, placas de vídeo, placas wireless, memória, etc.

lspci: Comando sem parâmetros

$ lspci

lspci: Informações do BARRAMENTO PCI no Linux

lspci: Informações do BARRAMENTO PCI no Linux

Primeiramente, você pode notar que há diversas informações que nem sabíamos da existência, ou que pelo menos não temos o gerenciamento direto, como é o caso do chipset do equipamento. Note também que, a “VGA Controller” é uma NVIDIA GTX 660ti.

Todos os outros controladores como Audio, USB, Ethernet que são soldados na placa-mãe, mas trafegam informações através do barramento PCI, também são listados pelo comando.

Sendo assim, podemos validar se um determinado hardware está sendo reconhecido ou não.

lspci: Identificando módulos no hardware (drivers)

Módulos, no Linux, são a mesma coisa que drivers para o Windows. Isto é, o módulo fará a interface entre o Kernel do sistema operacional com o dispositivo de hardware, permitindo que a parte física do equipamento seja controlada pelo sistema operacional.

É interessante notar que todos os dispositivos PCI tem um módulo atrelado, e que pode ser listado pelo comando lspci também.

$ lspci -k

lspci: Informações do BARRAMENTO PCI no Linux

lspci: Informações do BARRAMENTO PCI no Linux

Veja que a minha placa de vídeo está utilizando o módulo nvidia, mas ainda há os outros nvidiafb, nouveau, nvidia_384_drm, nvidia_384 que são dependências ou que ainda podem ser usados, como é o caso do nouveau. Se o dispositivo está utilizando o módulo nvidia (módulo oficial da NVIDIA), não se pode utilizar o nouveau, que é o genérico do Linux.

lspci: Filtrando o dispositivo

Para realizar o filtro do dispositivo que será utilizado, será necessário entender alguns conceitos do utilitário lspci.

Vendor: É o fabricante do dispositivo. Ex: NVIDIA.

Device: É o identificador do dispositivo. No caso da minha NVIDIA, há dois devices, um para a própria placa e outro para o controlador da áudio da placa de vídeo.

Bus: É o caminho por onde as informações trafegam entre um dispositivo e outro. Por exemplo se a CPU mandar uma informação para a memória, isso vai passar por um bus.

Vamos lá, se eu quiser filtrar informações de um dispositivo específico, posso usar a opção -s ou -d.

Com a opção -s eu devo apontar o bus e o dispositivo. Mas onde conseguir essas informações? No próprio lspci:

lspci: Informações do BARRAMENTO PCI no Linux

lspci: Informações do BARRAMENTO PCI no Linux

Sendo que 01.00 é o bus. Já o .0 é um device e .1 é outro.

Então, se eu quiser listar ambos os dispositivos neste bus:

$ lspci -s 01:00

lspci: Informações do BARRAMENTO PCI no Linux

lspci: Informações do BARRAMENTO PCI no Linux

Se quiser listar somente o controlador de áudio:

$ lspci -s 01:00.1

lspci: Informações do BARRAMENTO PCI no Linux

lspci: Informações do BARRAMENTO PCI no Linux

Também, podemos fazer esse filtro com a opção -d, mas aí temos que saber o vendor.

Para saber o vendor e o device vamos rodar o seguinte comando:

$ lspci -ns 01:00

OBS: A opção -n não usa a tradução de nomes, então ao invés de aparecer GTX 660ti, vai aparecer o vendor com device.

lspci: Informações do BARRAMENTO PCI no Linux

lspci: Informações do BARRAMENTO PCI no Linux

E aí, podemos executar:

$ lspci -d 10de:

lspci: Informações do BARRAMENTO PCI no Linux

lspci: Informações do BARRAMENTO PCI no Linux

Podemos executar para um dispositivo especial também:

$ lspci -d 10de:1183

lspci: Informações do BARRAMENTO PCI no Linux

lspci: Informações do BARRAMENTO PCI no Linux

Se quisermos listar tanto as informações de bus quanto de vendor, podemos rodar o comando:

$ lspci -nn

lspci: Informações do BARRAMENTO PCI no Linux

lspci: Informações do BARRAMENTO PCI no Linux

E se quisermos informações mas detalhadas:

$ lspci -v
$ lspci -vv
$ lspci -vvv

Caso você queria ver em forma de árvore, parecido com o pstree:

$ lspci -t

lspci: Informações do BARRAMENTO PCI no Linux

lspci: Informações do BARRAMENTO PCI no Linux

Espero que tenham gostado desta dica!

Não esqueça de nos seguir noInstagrampara receber os últimos conteúdos!

Participe dos nossos grupos no Telegram e Facebook! 🙂

Veja também:

Se tiver alguma dúvida ou sugestão de conteúdo, por favor, comente!

Comentários Disqus