Na realidade, o comando lshw é um pequeno utilitário de linha de comando que gera relatórios detalhados sobre vários componentes de hardware no sistema. Ele faz isso lendo arquivos diferentes no diretório  /proc.

O lshw é capaz de mostrar informações sobre configuração de memória, versão de firmware, configuração de placa-mãe, versão de CPU e velocidade, configuração de cache, velocidade de barramento etc.

É muito útil principalmente se você deseja obter informações detalhadas e rápidas sobre vários componentes de hardware em pouco tempo.


How to get hardware information with the lshw command in Linux

Instale lshw

Os usuários do Ubuntu, Debian e Fedora podem baixa-lo através dos repositórios padrão:


# Ubuntu, debian
$ Sudo apt-get install lshw

# Fedora, Centos 
$ Sudo yum install lshw

 

Usando lshw

O comando lshw precisa ser executado com privilégios de administrador para poder detectar e relatar a quantidade máxima de informações. Então, execute como root ou use o comando sudo.

O comando lshw lista todos os componentes como classes diferentes (Processador, memória, display, rede, armazenamento), o que possibilita a consulta individual de cada um.



Como Exibir informações completas

Executando lshw sem qualquer parâmetro é gerado um relatório de informações completas sobre todo o hardware detectado, o que consequentemente produzirá um relatório relativamente grande:


root@ederson:/home/eneves# lshw
ederson                  
    description: Computer
    product: Positivo
    vendor: INTEL
    width: 32 bits
    capabilities: smbios-2.4 smp-1.4 smp
    configuration: cpus=2
  *-core
       description: Motherboard
       physical id: 0
     *-cpu:0
          product: Intel(R) Pentium(R) Dual  CPU  E2180  @ 2.00GHz
          vendor: Intel Corp.
          physical id: 0
          bus info: cpu@0
          version: 6.15.13
          serial: 0000-06FD-0000-0000-0000-0000
          size: 2GHz
          capacity: 2GHz
          width: 64 bits
          capabilities: boot fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx x86-64 constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm lahf_lm dtherm cpufreq
          configuration: id=1
        *-logicalcpu:0
             description: Logical CPU
             physical id: 1.1
             width: 64 bits
             capabilities: logical
        *-logicalcpu:1
             description: Logical CPU
             physical id: 1.2
             width: 64 bits
             capabilities: logical
     *-cpu:1
          physical id: 1
          bus info: cpu@1
          version: 6.15.13
          serial: 0000-06FD-0000-0000-0000-0000
          size: 2GHz
          capacity: 2GHz
          capabilities: ht cpufreq
          configuration: id=1
        *-logicalcpu:0
             description: Logical CPU
             physical id: 1.1
             capabilities: logical
        *-logicalcpu:1
             description: Logical CPU
             physical id: 1.2
             capabilities: logical
     *-memory
          description: System memory
          physical id: 2
          size: 3031MiB
     *-pci
          description: Host bridge
          product: 82945G/GZ/P/PL Memory Controller Hub
          vendor: Intel Corporation
          physical id: 100
          bus info: pci@0000:00:00.0
          version: 02
          width: 32 bits
          clock: 33MHz
          configuration: driver=agpgart-intel
          resources: irq:0
        *-display
             description: VGA compatible controller
             product: 82945G/GZ Integrated Graphics Controller
             vendor: Intel Corporation
             physical id: 2
           *-usbhost
                product: UHCI Host Controller
                vendor: Linux 3.16.0-4-686-pae uhci_hcd
                physical id: 1
                bus info: usb@1
                logical name: usb1
                version: 3.16
                capabilities: usb-1.10
                configuration: driver=hub slots=2 speed=12Mbit/s
**********Muitas páginas serão produzidas********
root@en:/home/eneves#





Exibir informações de maneira resumida


Com o "-short" o comando lshw gera um relatório resumido de informações sobre os dispositivos de hardware que rapidamente fornecem  uma ideia sobre o perfil de hardware do sistema.



$ Sudo lshw -short
Caminho H / W Descrição da classe de dispositivo
                            Sistema ()
/ 0 autocarro DG35EC
/ 0/0 processador Intel (R) Core (TM) 2 Quad CPU Q8400 @ 2,66 GHz
/ 0/0/1 memória 2MiB cache L2
/ 0/0/3 memória 32KiB cache L1
/ 0/2 memória 32KiB cache L1
/ 0/4 de memória 64KiB BIOS
/ 0/14 memória Memória do sistema 8GiB
/ 0/14/0 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)
/ 0/14/1 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)
/ 0/14/2 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)
/ 0/14/3 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)
/ 0/100 bridge 82G35 Express DRAM Controller
/ 0/100/2 display Controlador gráfico integrado 82G35 Express
/0/100/2.1 display 82G35 Express Controlador de Gráficos Integrado
/ 0/100/19 rede eth0 82566DC Conexão de rede Gigabit
/ 0/100 / 1a barramento 82801H (Família ICH8) Controlador UHCI USB # 4
/0/100/1a.1 barramento 82801H (Família ICH8) Controlador USB UHCI # 5
/0/100/1a.7 barramento 82801H (Família ICH8) Controlador USB2 EHCI # 2
/ 0/100 / 1b multimídia 82801H (família ICH8) Controlador de áudio HD
/ 0/100 / 1c bridge 82801H (família ICH8) Porta PCI Express 1
/0/100/1c.1 ponte 82801H (Família ICH8) Porta PCI Express 2
/0/100/1c.2 bridge 82801H (Família ICH8) Porta PCI Express 3
/0/100/1c.2/0 armazenamento JMB368 Controlador IDE
/ 0/100 / 1d bus 82801H (Família ICH8) Controlador USB UHCI # 1
/0/100/1d.1 barramento 82801H (Família ICH8) USB UHCI Controlador # 2
/0/100/1d.2 barramento 82801H (Família ICH8) USB UHCI Controlador # 3
/0/100/1d.7 barramento 82801H (Família ICH8) Controlador USB2 EHCI # 1
/ 0/100 / 1e ponte 82801 Ponte PCI
/ 0/100 / 1e / 5 bus FW322 / 323 [TrueFire] Controlador 1394a
/ 0/100 / 1f ponte 82801HB / HR (ICH8 / R) Controlador de interface LPC
/0/100/1f.2 armazenamento 82801H (família ICH8) 4 portas SATA Controller [modo IDE]
/0/100/1f.3 barramento 82801H (Família ICH8) Controlador SMBus
/ 0/100/1f.5 armazenamento 82801HR / HO / HH (ICH8R / DO / DH) 2 portas SATA Controller [IDE m
/ 0/1 armazenamento scsi3    
/0/1/0.0.0 / dev / sda disco 500GB ST3500418AS
/0/1/0.0.0/1 / dev / sda1 volume 70GiB Volume do Windows NTFS
/0/1/0.0.0/2 / dev / sda2 volume 395GiB Partição estendida
/0/1/0.0.0/2/5 / dev / sda5 volume 97GiB partição HPFS / NTFS
/0/1/0.0.0/2/6 / dev / sda6 volume 97GiB partição do sistema de arquivos Linux
/0/1/0.0.0/2/7 / dev / sda7 volume 1952MiB partição Linux swap / Solaris
/0/1/0.0.0/2/8 / dev / sda8 volume 198GiB partição do sistema de arquivos Linux
/ 0/3 armazenamento scsi4    
/0/3/0.0.0 / dev / cdrom disco DVD RW DRU-190ª
$ Sudo lshw -short
Caminho H / W Descrição da classe de dispositivo
===================================================================================== =
                            Sistema ()
/ 0 autocarro DG35EC
/ 0/0 processador Intel (R) Core (TM) 2 Quad CPU Q8400 @ 2,66 GHz
/ 0/0/1 memória 2MiB cache L2
/ 0/0/3 memória 32KiB cache L1
/ 0/2 memória 32KiB cache L1
/ 0/4 de memória 64KiB BIOS
/ 0/14 memória Memória do sistema 8GiB
/ 0/14/0 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)
/ 0/14/1 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)
/ 0/14/2 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)
/ 0/14/3 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)
/ 0/100 bridge 82G35 Express DRAM Controller
/ 0/100/2 display Controlador gráfico integrado 82G35 Express
/0/100/2.1 display 82G35 Express Controlador de Gráficos Integrado
/ 0/100/19 rede eth0 82566DC Conexão de rede Gigabit
/ 0/100 / 1a barramento 82801H (Família ICH8) Controlador UHCI USB # 4
/0/100/1a.1 barramento 82801H (Família ICH8) Controlador USB UHCI # 5
/0/100/1a.7 barramento 82801H (Família ICH8) Controlador USB2 EHCI # 2
/ 0/100 / 1b multimídia 82801H (família ICH8) Controlador de áudio HD
/ 0/100 / 1c bridge 82801H (família ICH8) Porta PCI Express 1
/0/100/1c.1 ponte 82801H (Família ICH8) Porta PCI Express 2
/0/100/1c.2 bridge 82801H (Família ICH8) Porta PCI Express 3
/0/100/1c.2/0 armazenamento JMB368 Controlador IDE
/ 0/100 / 1d bus 82801H (Família ICH8) Controlador USB UHCI # 1
/0/100/1d.1 barramento 82801H (Família ICH8) USB UHCI Controlador # 2
/0/100/1d.2 barramento 82801H (Família ICH8) USB UHCI Controlador # 3
/0/100/1d.7 barramento 82801H (Família ICH8) Controlador USB2 EHCI # 1
/ 0/100 / 1e ponte 82801 Ponte PCI
/ 0/100 / 1e / 5 bus FW322 / 323 [TrueFire] Controlador 1394a
/ 0/100 / 1f ponte 82801HB / HR (ICH8 / R) Controlador de interface LPC
/0/100/1f.2 armazenamento 82801H (família ICH8) 4 portas SATA Controller [modo IDE]
/0/100/1f.3 barramento 82801H (Família ICH8) Controlador SMBus
/ 0/100/1f.5 armazenamento 82801HR / HO / HH (ICH8R / DO / DH) 2 portas SATA Controller [IDE m
/ 0/1 armazenamento scsi3    
/0/1/0.0.0 / dev / sda disco 500GB ST3500418AS
/0/1/0.0.0/1 / dev / sda1 volume 70GiB Volume do Windows NTFS
/0/1/0.0.0/2 / dev / sda2 volume 395GiB Partição estendida
/0/1/0.0.0/2/5 / dev / sda5 volume 97GiB partição HPFS / NTFS
/0/1/0.0.0/2/6 / dev / sda6 volume 97GiB partição do sistema de arquivos Linux
/0/1/0.0.0/2/7 / dev / sda7 volume 1952MiB partição Linux swap / Solaris
/0/1/0.0.0/2/8 / dev / sda8 volume 198GiB partição do sistema de arquivos Linux
/ 0/3 armazenamento scsi4    
/0/3/0.0.0 / dev / cdrom disco DVD RW DRU-190A



O sistema tem um processador da intel, 4 entalhes da RAM, 1 disco rígido 500gb com 6 divisórias, 1 escritor do dvd, 1 adaptador de rede, pares de portos do usb etc.

A terceira coluna é o nome da classe.

O comando lshw pode exibir informações somente de uma classe particular se solicitado com as opções "-class".



Exemplo: Mostrar apenas informações referentes à memória:


$ Sudo lshw -short -class memory
Caminho H / W Descrição da classe de dispositivo
===================================================================================== =
/ 0/0/1 memória 2MiB cache L2
/ 0/0/3 memória 32KiB cache L1
/ 0/2 memória 32KiB cache L1
/ 0/4 de memória 64KiB BIOS
/ 0/14 memória Memória do sistema 8GiB
/ 0/14/0 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)
/ 0/14/1 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)
/ 0/14/2 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)
/ 0/14/3 memória 2GiB DIMM DDR2 síncrono 667 MHz (1,5 ns)

 

 


Mostrar informações do processador

Com a classe processor, o lshw exibirá informações sobre a CPU:

Nota: Para obter maiores informações sobre o processador, é interessante não utilizar a opção resumida 


$ Sudo lshw -class processor
  *-CPU                  
       Descrição: CPU
       Produto: Intel (R) Core (TM) Quad 2 CPU Q8400 @ 2,66 GHz
       Fornecedor: Intel Corp.
       ID físico: 0
       Informação do ônibus: cpu @ 0
       Versão: Intel (R) Core (TM) Quad 2 CPU Q8400 @ 2,66 GHz
       Slot: LGA 775
Tamanho: 2664MHz
       Capacidade: 4GHz
       Largura: 64 bits
       Relógio: 333MHz
       Recursos: fpu fpu_exception wp vm de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx x86-64 constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni dtes64 monitor ds_cpl vmx est Tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm dtherm tpr_shadow vnmi flexpriority cpufreq



Observe  que lshw não diz com precisão o número de núcleos ou unidades de processamento disponíveis. 
O sistema acima, por exemplo, é um processador quadcore com 4 unidades de processamento.



Unidades de disco

Exibir as unidades de disco com a classe disk:


$ Sudo lshw -short -class disk
[Sudo] senha para iluminado:
Caminho H / W Descrição da classe de dispositivo
===================================================================================== =
/0/1/0.0.0 / dev / sda disco 500GB ST3500418AS
/0/3/0.0.0 / dev / cdrom disco DVD RW DRU-190A



Para exibir informações relativas às partições e controladores, especifique a classe de armazenamento e volume juntas com a classe de disco, assim você receberá um relatório mais completo com informações de armazenamento do sistema:


$ Sudo lshw -short -class disk -class storage -class volume
Caminho H / W Descrição da classe de dispositivo
===================================================================================== =
/0/100/1c.2/0 armazenamento JMB368 Controlador IDE
/0/100/1f.2 armazenamento 82801H (família ICH8) 4 portas SATA Controller [modo IDE]
/ 0/100/1f.5 armazenamento 82801HR / HO / HH (ICH8R / DO / DH) 2 portas SATA Controller [IDE m
/ 0/1 armazenamento scsi3    
/0/1/0.0.0 / dev / sda disco 500GB ST3500418AS
/0/1/0.0.0/1 / dev / sda1 volume 70GiB Volume do Windows NTFS
/0/1/0.0.0/2 / dev / sda2 volume 395GiB Partição estendida
/0/1/0.0.0/2/5 / dev / sda5 volume 97GiB partição HPFS / NTFS
/0/1/0.0.0/2/6 / dev / sda6 volume 97GiB partição do sistema de arquivos Linux
/0/1/0.0.0/2/7 / dev / sda7 volume 1952MiB partição Linux swap / Solaris
/0/1/0.0.0/2/8 / dev / sda8 volume 198GiB partição do sistema de arquivos Linux
/ 0/3 armazenamento scsi4    
/0/3/0.0.0 / dev / cdrom disco DVD RW DRU-190A





Informações sobre o adaptador de rede:

Use a classe de rede (class network) para exibir informações sobre o adaptador de rede / interface. Também nesse caso, para obter um relatório mais completo, não é interessante utilizar a forma resumida.

 Sudo lshw -class network
  *-rede              
       Descrição: Interface Ethernet
       Produto: 82566DC Conexão de rede Gigabit
       Fornecedor: Intel Corporation
       Id física: 19
       Informação do ônibus: pci @ 0000: 00: 19.0
       Nome lógico: eth0
       Versão: 02
       Série: 00: 1c: c0: f8: 79: ee
       Tamanho: 100Mbit / s
       Capacidade: 1Gbit / s
       Largura: 32 bits
       Relógio: 33MHz                   
       Capacidades: pm msi bus_master cap_list ethernet físico tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
    Configuração: autonegotiation = on broadcast = yes driver = e1000e driverversion = 2.3.2 -k duplex = firmware completo = 1.1-0 ip = 192.168.1.2 latência = 0 link = yes multicast = yes porta = velocidade de par trançado = 100Mbit / s
       Recursos: irq: 43 memória: e0300000-e031ffff memória: e0324000-e0324fff ioport: 20c0 (tamanho = 32)

 

 


Gerar relatório em formato html / xml

O utilitário lshw é capaz de produzir relatórios em formatos html, xml e json.


$ Sudo lshw -html> hardware.html



Para formato xml:



$ Sudo lshw -xml> hardware.xml

 

 

Conclusão

Os exemplos acima que eu apresentei, mostram quase tudo que o comando lshw pode fazer.

Confira a página do manual para obter maiores informações.




Observação:


O lshw também possui um front end o lshw-gtk, que reporta as mesmas informações em uma interface gráfica mínima


Como obter Informações de hardware com comando lshw no Linux
front end lshw-gtk



Página oficial :


tags: consultas, hardware,lhsw, comando,pacotes