Como instalar o Lshw no Linux e usá-lo para encontrar informações de hardware

Como Instalar O Lshw No Linux E Usa Lo Para Encontrar Informacoes De Hardware



Lshw é uma ferramenta de linha de comando do Linux para encontrar informações sobre o hardware instalado em seu computador/servidor. Lshw pode relatar a placa-mãe/placa-mãe, CPU, memória, disco, PCIE, USB e outras informações de hardware.

Lshw está disponível em todas as distribuições Linux existentes. Portanto, você pode usar a mesma ferramenta para encontrar as informações de hardware necessárias em cada distribuição Linux.







Neste artigo, mostraremos como instalar o lshw em distribuições populares do Linux e usá-lo para encontrar informações de hardware.



Tópico de Conteúdo:

Instalando Lshw no Ubuntu/Debian/Linux Mint/Kali Linux

Lshw está disponível no repositório oficial de pacotes do Ubuntu/Debian/Linux Mint/Kali Linux. Assim, você pode instalá-lo facilmente em seu computador/servidor.



Primeiro, atualize o cache do repositório de pacotes APT com o seguinte comando:





$ sudo atualização adequada



Para instalar o lshw, execute o seguinte comando:

$ sudo apto instalar -e etc.

Lshw deve ser instalado em seu sistema Ubuntu/Debian/Linux Mint/Kali Linux.

Instalando Lshw no Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream

Lshw está disponível no repositório oficial de pacotes do Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream. Assim, você pode instalá-lo facilmente em seu computador/servidor.

Primeiro, atualize o cache do repositório de pacotes DNF com o seguinte comando:

$ sudo dnf makecache

Para instalar o lshw, execute o seguinte comando:

$ sudo dnf instalar etc.

Para confirmar a instalação, pressione “Y” e depois pressione .

Lshw deve ser instalado em seu sistema Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream.

Listando o hardware disponível com Lshw

Você pode listar todo o hardware disponível do seu computador/servidor com lshw da seguinte forma:

$ sudo etc. -curto

Todo o hardware disponível do seu computador/servidor deve estar listado em um formato bonito.

Você encontrará as seguintes informações aqui:

  1. Caminho H/W : Este é o caminho físico do hardware instalado em seu computador/servidor. Aqui, /0 é a placa-mãe, /0/100 é o processador (conectado à placa-mãe), /0/100/ é o hardware conectado às pistas do processador e assim por diante.
  2. Dispositivo : Este é o nome/identificador do hardware atribuído pelo kernel. O exemplo mais comum é o nome/identificador dos dispositivos de rede, como enp38s0, enp39s0, etc.
  3. Aula : Todo o hardware do seu computador/servidor pertence a um determinado grupo/classe. Por exemplo, os dispositivos de rede são agrupados na classe de rede, os dispositivos de armazenamento são agrupados na classe de armazenamento e assim por diante. A classe de hardware pode ser usada para filtrar a saída do lshw .
  4. Descrição : É uma breve descrição do respectivo hardware.

Se você quiser ver as informações do barramento do hardware em vez do caminho do hardware (caminho H/W), execute o comando lshw da seguinte forma:

$ sudo etc. -businfo

Como você pode ver, a primeira coluna agora mostra as informações do barramento do hardware em vez do caminho do hardware.

As informações do barramento de diferentes hardwares mostrarão as informações em diferentes formatos:

  • CPU : O ID do barramento das CPUs estará em cpu@ , Por exemplo, a CPU cpu@0 (processador AMD Ryzen 9 3900X no meu caso) tem o ID 0. Na maioria dos computadores desktop e laptops, você terá apenas um processador e uma entrada de CPU que é “cpu@0”.
  • Dispositivos PCIE: O ID do barramento dos dispositivos PCIE estará no pci@: :. O número do também é chamado de número do . Por exemplo, o dispositivo PCIE pci@0000:26:00.0 (dispositivo de rede gigabit I211 em nosso caso) possui o domínio 0000, barramento 26, slot/dispositivo 00 e função 0. Os números de ID são hexadecimais e preenchidos com zeros.
  • Dispositivos SCSI : O ID do barramento dos dispositivos de armazenamento SCSI estará no scsi@:. ., Por exemplo, scsi@1:0.0.0 é um dispositivo de armazenamento SCSI/SATA que possui controlador 1, destino 0, id 0, lun 0 e nenhuma partição. Se o dispositivo de armazenamento SCSI/SATA tiver partições, o ID do barramento será scsi@1:0.0.0,1 para a primeira partição, scsi@1:0.0.0,2 para a segunda partição, scsi@1:0.0.0 ,3 para a terceira partição e assim por diante.
  • Dispositivos USB : O ID do barramento dos dispositivos de armazenamento USB estará no usb@:. Por exemplo, usb@3:6.3 é um dispositivo USB que possui controlador 3, slot 6 e id 3. O usb@3:1 é um dispositivo USB que possui controlador 3 e slot 1.

Filtrando a saída Lshw com classe de hardware

Lshw atribui uma classe a cada dispositivo de hardware. Você pode filtrar a saída do comando “lshw” para incluir apenas determinados tipos de hardware usando esses nomes de classe.

As classes de hardware lshw disponíveis são:

  • sistema : A placa-mãe e os dispositivos PnP do sistema.
  • ponte : Os dispositivos de barramento interno como PCIE, ponte host, etc.
  • memória : Os dispositivos de memória como BIOS, RAM, ROM, caches de CPU, firmware, etc.
  • processador : Os processadores do seu computador e controladores SCSI RAID.
  • endereço : Os endereços de memória para extensão ROM e vídeo.
  • armazenar : O controlador SCSI e IDE.
  • disco : Os dispositivos de armazenamento de acesso aleatório, como HDD, SSD, SSD NVME, CD-ROM, DVD, etc.
  • volume : As partições do seu disco/dispositivos de armazenamento.
  • fita : Os dispositivos de armazenamento de acesso sequencial como DAT, DDS, etc.
  • ônibus : O barramento de conexão do dispositivo como USB, SCSI, FireWire, etc.
  • rede : As interfaces de rede como Ethernet, WiFi, etc.
  • mostrar : os dispositivos de exibição como sua GPU.
  • entrada : Os dispositivos de entrada, como teclados, mouses, portas HDMI/DP, portas de áudio HD, botão liga/desliga, alto-falante do PC, etc.
  • impressora : Os dispositivos de impressão, ou seja, impressora.
  • multimídia : Os dispositivos de áudio e vídeo, como placa de vídeo (GPU), placa de som, placa de saída de TV, etc.
  • comunicação : Os dispositivos de comunicação como Bluetooth.
  • poder : As fontes de energia como fonte de alimentação (PSU), bateria interna, etc.
  • genérico : Os dispositivos que não podem ser classificados.

Nem todos os computadores/servidores terão todas as classes de hardware instaladas. Portanto, para encontrar as classes de hardware que seu computador/servidor possui, recomendamos que você execute o comando “lshw” com a opção “-short” ou “-businfo”.

$ sudo etc. -curto

$ sudo etc. -businfo

Para filtrar a saída do comando “lshw” para exibir apenas os tipos específicos de hardware (ou seja, dispositivos de armazenamento), use a opção “-class” da seguinte forma:

$ sudo etc. -businfo -aula disco

ou

$ sudo etc. -curto -aula disco

Como você pode ver, lshw listou apenas os dispositivos de armazenamento (2 SSDs Samsung 860 EVO SATA de 500 GB) que estão instalados em nosso computador.

Você pode usar a opção “-class” várias vezes para exibir vários tipos de hardware ao mesmo tempo com o comando “lshw”.

Por exemplo, para exibir os dispositivos de armazenamento, bem como as partições do disco usando o comando “lshw”, use a opção “-class” duas vezes da seguinte forma:

$ sudo etc. -businfo -aula disco -aula volume

ou

$ sudo etc. -curto -aula disco -aula volume -aula

Como você pode ver, lshw listou os dispositivos de armazenamento, bem como as partições desses dispositivos de armazenamento.

Encontrando informações detalhadas de hardware com Lshw

Para encontrar informações detalhadas sobre tipos específicos de hardware (ou seja, rede), execute lshw com a opção “-class” da seguinte forma:

$ sudo etc. -aula rede

Como você pode ver, são impressas informações muito detalhadas sobre todos os dispositivos de rede instalados em nosso computador.

Ocultando informações confidenciais da saída Lshw

Por padrão, o comando “lshw” imprime informações confidenciais (ou seja, endereço MAC dos dispositivos de rede) enquanto exibe informações detalhadas de hardware. Se você precisar compartilhar informações de hardware com outras pessoas na Internet para obter ajuda com a instalação de um driver, por exemplo, você pode ocultar essas informações confidenciais da saída lshw.

Para ocultar informações confidenciais das informações detalhadas de hardware, você pode usar a opção “-sanitize” do comando “lshw” da seguinte forma:

$ sudo etc. -higienizar -aula rede

Como você pode ver, os endereços MAC e IP são removidos dos dispositivos de rede.

Exibindo os IDs numéricos para dispositivos PCIe e USB

Por padrão, os IDs numéricos não são exibidos para os dispositivos PCIe e USB na saída do comando “lshw”.

Para exibir os IDs numéricos dos dispositivos PCIe e USB na saída do comando “lshw”, use a opção “-numeric” da seguinte forma:

$ sudo etc. -numérico -aula rede

ou

$ sudo etc. -numérico -aula ônibus

Como você pode ver, os IDs numéricos são exibidos para os dispositivos USB na saída do comando “lshw”.

Removendo os carimbos de data/hora voláteis da saída Lshw

Por padrão, lshw imprime os carimbos de data/hora voláteis (mudança de dados de hora) para volumes de disco e outros dispositivos. Se você não quiser ver esses carimbos de data e hora, execute o comando “lshw” com a opção “-notime” da seguinte forma:

$ sudo etc. -nenhuma hora -aula volume

Como você pode ver, os dados de carimbo de data/hora montados são removidos da saída lshw onde a opção “-notime” é usada.

Exportando as informações de hardware usando Lshw

Você pode exportar as informações de hardware lshw em diferentes formatos. No momento em que este artigo foi escrito, o lshw pode exportar as informações de hardware nos seguintes formatos:

  • Banco de dados SQLite
  • HTML
  • XML
  • JSON

Para exportar as informações de hardware lshw para um arquivo de banco de dados SQLite, execute o seguinte comando:

$ sudo etc. -jogar fora ~ / dados / lshw.db &>/ desenvolvedor / nulo

Como você pode ver, o arquivo de banco de dados SQLite “lshw.db” é criado.

$ eu -lh ~ / dados

Você pode ler o arquivo de banco de dados “lshw.db” com SQLite e imprimir todas as tabelas do banco de dados da seguinte forma:

$ sudo sqlite3 ~ / dados / lshw.db --linha '.tabelas'

Você pode imprimir informações sobre os dispositivos de rede do arquivo “lshw.db” com o seguinte comando SQLite:

$ sudo sqlite3 ~ / dados / lshw.db --linha 'SELECT * FROM nós WHERE classe LIKE 'rede''

Para exportar as informações de hardware lshw para um arquivo HTML, execute o seguinte comando:

$ sudo etc. -html > ~ / dados / lshw.html

Se você também deseja limpar/ocultar informações confidenciais, execute o comando lshw HTML export da seguinte maneira:

$ sudo etc. -higienizar -html > ~ / dados / lshw.html

Como você pode ver, as informações de hardware lshw são exportadas para um arquivo HTML “lshw.html”.

$ eu -lh ~ / dados

Você pode abrir o arquivo “lshw.html” com seu navegador favorito.

$ firefox ~ / dados / lshw.html

Abrimos o arquivo “lshw.html” com o navegador Mozilla Firefox e as informações de hardware são exibidas como você pode ver na imagem a seguir:

Para exportar as informações de hardware lshw para um arquivo XML, execute o seguinte comando:

$ sudo etc. -xml > ~ / dados / lshw.xml

Se você também deseja limpar/ocultar informações confidenciais, execute o comando lshw XML export da seguinte maneira:

$ sudo etc. -higienizar -xml > ~ / dados / lshw.xml

Como você pode ver, as informações de hardware lshw são exportadas para um arquivo XML “lshw.xml”.

$ eu -lh ~ / dados

Abrimos o arquivo “lshw.xml” com o editor de texto Vim e as informações do hardware lshw são exibidas em formato XML, como você pode ver na imagem a seguir:

$ porque ~ / dados / lshw.xml

Para exportar as informações de hardware lshw para um arquivo JSON, execute o seguinte comando:

$ sudo etc. -json > ~ / dados / lshw.json

Se você também deseja limpar/ocultar informações confidenciais, execute o comando lshw JSON export da seguinte maneira:

$ sudo etc. -higienizar -json > ~ / dados / lshw.json

Como você pode ver, as informações de hardware lshw são exportadas para um arquivo JSON “lshw.json”.

$ eu -lh ~ / dados

Abrimos o arquivo “lshw.json” com o editor de texto Vim e as informações do hardware lshw são exibidas no formato JSON, como você pode ver na imagem a seguir:

$ porque ~ / dados / lshw.json

As opções lshw -sanitize, -numeric e -notime funcionarão para exportações lshw HTML, XML e JSON, não para exportação SQLite. Para obter mais informações sobre essas opções, leia as seções anteriores deste artigo.

Exemplo 1: Encontrando as GPUs instaladas em seu computador/servidor com Lshw

Depois de instalar um novo sistema operacional em seu computador/servidor, uma das coisas mais importantes a fazer é encontrar a GPU (placa gráfica/processador) que você instalou em seu computador/servidor e instalar o driver apropriado para ela.

Você pode encontrar as GPUs instaladas em seu computador/servidor com o seguinte comando “lshw”:

$ sudo etc. -aula mostrar

Como você pode ver, temos uma NVIDIA GeForce RTX 4070 instalada em nosso computador [1] . Está usando os drivers oficiais da NVIDIA (conforme instalamos) [2] . Se você tiver uma GPU NVIDIA instalada em seu computador/servidor, mas os drivers oficiais da NVIDIA não estiverem instalados, você verá “driver=nouveau”. Nesse caso, você terá que instalar os drivers oficiais da NVIDIA em seu computador/servidor para poder utilizar todos os recursos e obter o melhor desempenho de sua GPU.

Exemplo 2: Encontrando o chipset dos dispositivos/interfaces de rede com Lshw

Instalar o driver de rede correto também é uma parte essencial de uma nova instalação do Linux. A menos que os drivers de rede corretos estejam instalados, seus dispositivos de rede poderão não funcionar ou funcionar com funcionalidade limitada (pode resultar em um desempenho de rede muito fraco). Para poder instalar os drivers de rede corretos, você precisa conhecer o chipset dos seus dispositivos de rede.

Para encontrar o chipset e outras informações sobre os dispositivos de rede instalados em seu computador/servidor, execute o comando “lshw” da seguinte forma:

$ sudo etc. -aula rede

Como você pode ver, temos dois dispositivos Ethernet instalados em nosso computador.

Um deles é uma interface de rede Intel I211 Gigabit [1] . O kernel do Linux deu-lhe um nome lógico como enp38s0 [2] . Como você pode ver, ele usa o chipset Intel igb (driver=igb) [3] . Portanto, para que esta interface de rede funcione, você deve instalar o driver/firmware Intel igb em seu computador/servidor (se ainda não estiver instalado).

A outra é uma interface de rede Realtek RTL8125 2.5GbE [4] . O kernel do Linux deu-lhe um nome lógico como enp39s0 [5] . Como você pode ver, ele usa o chipset Realtek r8169 (driver=r8169) [6] . Portanto, para que esta interface de rede funcione, você deve instalar o driver/firmware Realtek r8169 em seu computador/servidor (se ainda não estiver instalado).

Também temos um dispositivo Ethernet USB e um adaptador WiFi conectado ao nosso computador.

A interface de rede LAN USB 10/100 mbps [1] tem o nome lógico, enp42s0f3u6u3 [2] . Como você pode ver, ele usa o chipset Realtek r8152 (driver=r8152) [6] . Portanto, para que esta interface de rede funcione, você deve instalar o driver/firmware Realtek r8152 em seu computador/servidor (se ainda não estiver instalado).

A interface de rede WiFi 802.11n[4] tem o nome lógico wlp42s0f3u1[5]. Como você pode ver, ele usa o chipset MediaTek mt7601u (driver=mt7601u) [6] . Portanto, para que esta interface de rede funcione, você deve instalar o driver/firmware MediaTek mt7601u em seu computador/servidor (se ainda não estiver instalado).

Conclusão

Este é um guia extenso sobre lshw. Neste artigo, mostramos como instalar o lshw em distribuições Linux populares (ou seja, Ubuntu, Debian, Linux Mint, Kali Linux, Fedora, RHEL, AlmaLinux, Rocky Linux, CentOS Stream). Também mostramos como listar o hardware do seu computador, filtrar a saída do lshw para exibir certos tipos de hardware e ocultar informações confidenciais de hardware da saída do lshw. Mostramos como exibir o ID numérico para dispositivos PCIE e USB, bem como remover os carimbos de data e hora voláteis da saída lshw. Também mostramos como exportar as informações de hardware lshw no banco de dados SQLite, formato HTML, XML e JSON e lê-las. Por fim, mostramos como encontrar a GPU e os dispositivos de rede que você instalou em seu computador e o chipset que os dispositivos de rede estão usando com lshw para ajudá-lo com a instalação correta do driver/firmware.

Referências: