Letreiro

Quer ficar livre de vírus??? Troque seu sistema operacional, seja livre, use Ubuntu. >> ubuntu-br.org/.

sábado, 29 de junho de 2013

Listando Hardware e Módulos


Hardware: É toda parte física do computador.
Módulos: São partes do kernel que são carregados apenas quando solicitados por aplicativos ou dispositivos.

Muitas veses será necessário listarmos os dispositivos do sistema para saber o tipo de hardware que o equipamento possui, fazer uma configuração, gerar um relatório ou simplismente verificar a necessidade de uma atualização. É ai que precisamos conhecer alguns comandos para a inspeção do hardware, os mais usados são lspci, lsusb e lsmod. Esses três comandos coletam informações do /sys e /proc, onde já falamos sobre eles no post (Sistema de Arquivos SYSFS e O Diretório /proc). Para os exemplos utilizei o Ubuntu Server 12.04 rodando em uma maquina virtual.
  



LSPCI

O lspci mostra os dispositivos integrados ao barramento PCI  (Peripheral Component Interconnect — Interconector de Componentes Periféricos) da maquina. Veja a saída abaixo: 

santana@server01:~$ lspci
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:02.0 VGA compatible controller: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter
00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)
00:04.0 System peripheral: InnoTek Systemberatung GmbH VirtualBox Guest Service
00:05.0 Multimedia audio controller: Intel Corporation 82801AA AC'97 Audio Controller (rev 01)
00:06.0 USB controller: Apple Inc. KeyLargo/Intrepid USB
00:07.0 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)
00:0b.0 USB controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller
00:0d.0 SATA controller: Intel Corporation 82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (rev 02)

O primeiro item mostrado é o ID do dispositivo, então com o ID do dispositivo em mãos podemos saber mais detalhes sobre o mesmo, como o mapeameto da memoria usando o comando lspci -s ID -v. Veja a saída do comando com o ID 00:03.0 (Ethernet controller).

santana@server01:~$ lspci -s 00:03.0 -v
00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)
Subsystem: Intel Corporation PRO/1000 MT Desktop Adapter
Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 10
Memory at f0000000 (32-bit, non-prefetchable) [size=128K]
I/O ports at d010 [size=8]
Capabilities: <access denied>
Kernel driver in use: e1000
Kernel modules: e1000

Para visualisar a saida de todos os dispositivos listados use lspci -vv.


LSUSB

O lsusb mostra os dispositivos conectados ao barramento USB (Universal Serial Bus) da maquina.

santana@server01:~$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 80ee:0021 VirtualBox USB Tablet

Também com o ID do dispositivo em mãos podemos saber mais detalhes sobre o mesmo usando o comando lsusb -d ID -v. Veja a saída com o ID 80ee:0021 (VirtualBox USB Tablet):

santana@server01:~$ lsusb -d 80ee:0021 -v
Bus 002 Device 002: ID 80ee:0021 VirtualBox USB Tablet
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x80ee VirtualBox
  idProduct          0x0021 USB Tablet
  bcdDevice            1.00
  iManufacturer           1 
  iProduct                3 
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           34
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      70
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0006  1x 6 bytes
        bInterval              10


LSMOD

O lsmod lista os módulos ativos no sistema pelo kernel, também pode ser usado o comando cat /proc/modules.

santana@server01:~$ lsmod
Module                  Size  Used by
vesafb                 13516  1 
ppdev                  12849  0 
snd_intel8x0           33455  0 
snd_ac97_codec        106082  1 snd_intel8x0
ac97_bus               12642  1 snd_ac97_codec
snd_pcm                80845  2 snd_intel8x0,snd_ac97_codec
psmouse                72919  0 
snd_timer              28931  1 snd_pcm
snd                    62064  4 snd_intel8x0,snd_ac97_codec,snd_pcm,snd_timer
serio_raw              13027  0 
joydev                 17393  0 
soundcore              14635  1 snd
i2c_piix4              13093  0 
snd_page_alloc         14108  2 snd_intel8x0,snd_pcm
parport_pc             32114  0 
mac_hid                13077  0 
lp                     17455  0 
parport                40930  3 ppdev,parport_pc,lp
usbhid                 41906  0 
hid                    77367  1 usbhid
e1000                 101693  0 

A coluna Module mostra o nome do modulo carregado, enquanto a coluna Used mostra os módulos que estão usando aquele recurso.

Dica: Para ter uma visualização geral de todo o hardware do sistema podemos usar o comando lshw ou lshw -html (como root) para ter uma saída em formato html.


Fonte: 
YesLinux - LPIC-1 – 101.1 – Identificando e Configurando Hardware – Parte 1
Em: http://www.yeslinux.com.br/?p=92. Acessado em 28-04-2013

Guia Foca GNU/Linux - Capítulo 16 - Kernel e Módulos
Em: http://www.guiafoca.org/cgs/guia/inic_interm/ch-kern.html. Acessado em 28-04-2013

Guia Foca GNU/Linux - 3.5 Listando as placas e outros hardwares em um computador
Em: http://www.guiafoca.org/cgs/guia/inic_interm/ch-hardw.html#s-hardw-findhw. Acessado em 28-04-2013




Sidinei Santana – Administrador do Blog W3Suporte.



Assine a nossa Newsletter. Digite seu e-mail:
Receba as novidades do Blog gratuitamente em seu e-mail


Entregue por FeedBurner

Nenhum comentário:

Postar um comentário

Seu comentário será bem vindo, mas leia antes de comentar!

Todos os comentários serão moderados pelo autor e podem não ser aprovado em caso de:

- Linguagem vulgar
- Ataque pessoais ou ameaças
- Agressões verbais
- Comentário adverso
- Spam