11 de dezembro de 2009

lshw

Uma das dificuldades de pessoas iniciantes ou até mesmo pessoas mais experientes que administram redes e sistemas é conhecer realmente a especificação do hardware e muitas das vezes informações que julgamos irrelevantes, por exemplo: o vendedor do hardware, qual o firmware que o mesmo utiliza? Qual o padrão? O.E.M? E o BIOS? Qual a empresa que o fornece? Essas e outras questões podem ser respondidas com facilidade. O objetivo deste documento é esclarecê-lo de forma clara e bastante detalhada.

Em diversos momentos nos perguntamos, qual é o driver ou módulo que estamos utilizando? Pois a facilidade que temos com a instalação do Linux não precisarmos instalar drivers de hardware após a instalação do sistema. Você já teve curiosidade em saber qual o comando ou aplicativo que lhe fornece o modelo de sua placa mãe? Nos gera a dúvidas sobre o máximo e mínimo suportado em nosso processador, saber qual a quantidade de cache? Ele é 32 ou 64 bits? Se não, então irei mostrar-lhes o comando lshw, que tenho certeza que irá ajudar-lhe muito em suas dúvidas a respeito do seu hardware. Pois bem, esse comando é originado de um software cujo nome é o próprio comando lshw, que recebeu este nome por Hardware lister (Listar Hardware).

O lshw é uma pequena ferramenta para fornecer informações referentes ao conjunto de hardware que compõe sua maquina, ele possui uma enorme eficiência em mostrar a configuração exata de seu processador, bem como a velocidade, quantidade de clock e cache. Enfim, todos os componentes ou peças que formam seu computador. Também é capaz de identificar a versão do software ou firmware que controlam o hardware, e faz isso de forma precisa e eficiente. Foi desenvolvido em C++ e está vinculado do ao projeto eZIX, iniciado em 2002 com o objetivo de elaborar uma usável ferramenta para sistemas UNIX, com base no Linux e libc.

O lshw está disponível para sistemas baseados em plataforma Unix, bem como os sistemas operacionais Linux e suas derivações e sistema Mac e Mac OS X. Atualmente ele se encontra na versão 2.14 e está disponível para todas as distribuições Linux como já mencionado. Sua instalação pode ser feita por meio de gerenciadores de instalação da distribuição Linux que está usando no momento. No quadro abaixo uma relação de formas de instalação em algumas distros.

Instalação dos pacotes no Ubuntu:

# apt-get install lshw lshw-gtk

Instalação dos pacotes no Mandriva:

# urpmi lshw

Instalação dos pacotes no Fedora:

# yum install lshw lshw-gui

Instalação dos pacotes no Gentoo:

# emerge lshw

Após a instalação do programa podemos utilizá-lo, mas antes veremos o que podemos obter se o utilizarmos de forma correta e precisa. O programa te permite exibir relatório de acordo com o formato, podendo ser HTML, XML, relatório resumido. Para usá-lo basta que execute o comando lshw seguido do parâmetro que desejas. Uma das primeiras coisas que podemos testar é a versão do software e para isso o usamos o comando: lshw -version, que exibirá na saída padrão o resultado com a versão do software. Abaixo temos os seguintes modos de uso de desse programa junto com as opções de relatório.

O programa sempre retorna os resultados na saída padrão, caso você queira colocá-lo direto em um arquivo pode usar o redirecionamento para um arquivo, veja as três situações abaixo:

HTML na saída padrão:

# lshw -html

HTML no arquivo:

# lshw -html > nomedoarquivo.html

XML na saída padrão:

# lshw -xml

XML no arquivo:

# lshw -xml > nomedoarquivo.xml

Podemos também obter relatórios reduzidos contendo apenas informações mais especificas e objetivas, como por exemplo, saber somente informações reduzidas de cada hardware. Abaixo duas formas simplórias para dois parâmetros, o -short e o -businfo. São poucas as diferenças entre um e outro, mas o -short indica o caminho de cada dispositivo. O parâmetro -businfo faz referência aos controladores de hardwares. Veja os comandos abaixo.

# lshw -short
# lshw -businfo

Por fim, terminando as opções de linha de comando, pode ter uma opção interessante que é fazer busca de dispositivo por classe, que ao contrário de se aplicar o comando sozinho, que lhe mostrará muitos resultados. Podemos filtrá-lo, por exemplo: "quero somente as especificações do processador". Neste caso teremos que saber em qual classe o processador se encontra. Com os comandos que foram aplicados acima podemos obter essa informações.

Pois bem, veja um exemplo para obter informações somente de um hardware específico.

Comando para saber somente as especificações da placa mãe:

# lshw -class system

O resultado deste comando detém todas especificações da sua placa mãe, em meu computador o resultado deste comando foi o seguinte:
    androide                 
description: Desktop Computer
product: P4V8X-MX
vendor: System manufacturer
version: 1.00
serial: 00000000
width: 32 bits
capabilities: smbios-2.3 dmi-2.3 smp-1.1 smp
configuration: chassis=desktop cpus=1 uuid=00020003-0004-0005-0006-000700080009

Caso não entenda as especificações acima, no final deste artigo deixarei duas tabelas para melhor explicar.

Por fim podemos usar o programa em modo gráfico, que consiste em um comando ou uma execução no executar comando de sua distribuição, no meu caso estou usando Ubuntu e para fazer isso eu uso o Alt + F2. Então aperte Alt + F2 e digite lshw-gtk ou lshw -X no terminal e uma tela aparecerá contendo as especificações do hardware. Para ver uma prévia de como é a interface do programa, acesse este link (screenshot).

Então por hora aí está o programa que ajudará em todas as suas dúvidas a respeito de hardware e de firmware. Quando me referi ao título que poderia ver toda a especificação com apenas um comando, você pode usar somente o comando lshw.

Nenhum comentário: