fbpx
Whatsapp (31) 3069-8315
atendimento@certificacaolinux.com.br
Configurar USB no Linux

Veja como reconhecer dispositivos USB no Linux

USB é a sigla de Universal Serial Bus. Esta tecnologia criou um novo método de conectar periféricos ao computador.

Instalar um periférico foi encarado como uma tarefa assustadora, digna apenas de técnicos ou pessoas com mais experiência.

Isso exigia mais do usuário, pois ele tinha que abrir o computador para instalar uma placa adicional, configurar jumpers, IRQs, endereços de memória e de E/S.

Com a implementação do padrão Plug and Play (PnP) para detecção automática de periféricos e dispositivos pela BIOS, essa tarefa se tornou mais fácil.

O objetivo do padrão PnP foi tornar o usuário capaz de instalar um novo periférico e usá-lo imediatamente, sem muita dificuldade.

Um grupo de empresas criou em 1995 um consórcio para desenvolver uma especificação de hardware e promover a rápida adoção dessa nova tecnologia e o desenvolvimento de novos dispositivos compatíveis e de alta qualidade.

Nascia o USB (Universal Serial Bus), um barramento com um único tipo de combinação porta/conector, usado para ligar facilmente ao computador várias categorias de dispositivos como scanners, câmeras, teclados, caixas de som, impressoras etc .

O barramento USB 1.0 e 1.1 permite até 127 dispositivos a uma velocidade de até 12 Mbps.

Já o USB 2.0 permite taxas de transferência até 480 Mbps. A versão 3.0 introduzida em 2010 suporta uma taxa máxima teórica de 4,8 Gbps, mas na média trabalha a 3,2 Gbps.

Este último padrão requer um conector diferente do padrão 1.x e 2.0 e necessariamente um kernel com versão superior ao 2.6.31.

Os periféricos que serão abordados como exemplo são o teclado, o mouse, impressoras e a WebCam3 USB da Creative Labs.

O primeiro passo é determinar qual xHCI (Host Controller Interface) sua placa-mãe possui e carregar o módulo correspondente ao chip.

O comando para determinar qual o chip utilizado em sua placa-mãe é:

# lspci -vt

-[00]-+-00.0 VIA Technologies, Inc. VT82C693A/694x [Apollo PRO133x]

+-01.0-[01]——00.0 ATI Technologies Inc Rage XL AGP 2X

+-07.0 VIA Technologies, Inc. VT82C686 [Apollo Super South]

+-07.1 VIA Technologies, Inc. VT82C586/B/686A/B PIPC Bus Master IDE

+-07.2 VIA Technologies, Inc. USB

+-07.3 VIA Technologies,
Inc. USB

+-07.4 VIA Technologies,
Inc. VT82C686 [Apollo Super ACPI]

+-07.5 VIA Technologies,
Inc. VT82C686 AC97 Audio Controller

+-0b.0 Adaptec AIC-7892A U160/m

\-0d.0 Intel Corp. 82557/8/9 [Ethernet Pro 100]

Caso sua placa-mãe possua um Chipset da INTEL ou da VIA, será necessário subir o módulo usb-uhci.

Se possuir um Chipset da OPTi, SiS, ALi, Compaq, Apple será necessário subir o módulo usb-ohci.

Os comandos são:

# modprobe usb-uhci

Ou

# modprobe usb-ohci

Estes módulos fornecerão suporte aos dispositivos USB.

Agora vamos aos periféricos:

Configurar o Teclado no Linux

Para configurar corretamente o seu teclado USB, precisamos carregar dois módulos adicionais:

# modprobe hid

E

$ modprobe keydev

Configurar o Mouse no Linux

O procedimento para instalarmos um dispositivo Mouse USB é parecido com a ativação do teclado:

# modprobe hid

E

# modprobe mousedev

Configurar Impressora USB no Linux

No caso da impressora, será necessário carregar, após o módulo correto de seu Chipset, o seguinte módulo:

# modprobe printer

Configurar a Câmera (webcam) USB no Linux

A WebCam USB da Creative Labs é baseada no Chip OV511. Devemos carregar, após o módulo do Chipset, o módulo apropriado para a câmera:

# modprobe ov511

Configurar outros dispositivos USB no Linux

O Linux tem suporte a diversos dispositivos USB através dos módulos do Kernel. Você poderá consultar os Chipsets suportados no diretório /lib/modules/versão-do-kernel/kernel/drivers/usb.

Ferramentas Para Configuração de Dispositivos USB

Algumas distribuições possuem ferramentas interessantes para a configuração automática de dispositivos USB, como o usbmgr e o hotplug.

O usbmgr é uma ferramenta utilizada para carregar e descarregar os módulos do Kernel para os dispositivos USB quando estes são conectados ou desconectados ao micro e executar automaticamente os scripts de configuração destes.

O usbmgr possui o arquivo /etc/usbmgr.conf que contém uma vasta lista de dispositivos e fabricantes que são automaticamente reconhecidos e configurados. Você não precisa alterar este arquivo.

A ferramenta hotplug foi introduzida a partir do Kernel 2.4 para reconhecer e configurar automaticamente dispositivos USB, PCI Cardbus (PCMCIA), IEEE 1394 (Firewire) e docking stations para laptops.

O hotplug entra em cena com a função de detectar novos dispositivos. É ele o responsável por carregar os módulos apropriados, ajustar permissões e executar tarefas diversas sempre que um novo dispositivo é conectado.

A partir do Kernel 2.6 o hotplug tornou-se o componente padrão para detecção de hardware USB, PCMCIA e Firewire. Ele faz parte dos serviços do sistema e pode ser carregado com o comando:

# /etc/init.d/hotplug start

Os arquivos de configuração do hotplug estão concentrados dentro da pasta /etc/hotplug.

O hotplug trabalha com códigos de identificação dos dispositivos, carregando módulos ou executando scripts com funções diversas.

Na maioria das distribuições o arquivo /etc/hotplug/usb.distmap contém as regras pré-configuradas dos diversos dispositivos USB.

Você pode colocar regras adicionais usando o arquivo /etc/hotplug/usb.usermap possibilitando a execução de scripts personalizados quando determinados dispositivos são conectados, como tocar um som, abrir um determinado programa ou mesmo fazer backup automático.

Aprenda muito mais sobre Linux em nosso curso online. Você pode fazer a matrícula aqui com trial de 7 dias grátis. Se você já tem uma conta, pode acessar aqui.

Gostou? Compartilhe 🙂

Use o lspci para ver o hardware no Linux

Conheça o comando lspci para ver o hardware que o Linux foi capaz de reconhecer.

O lspci é útil para mostrar todas as informações sobre os barramentos PCI do sistema e os dispositivos conectados a eles.

Suas opções mais comuns são:

  • -v  Mostra informações detalhadas sobre todos os dispositivos.
  • -vv           Mostra ainda mais informações sobre os dispositivos.
  • -n Mostra os códigos dos fabricantes e dispositivos.
  • -x  Mostra os primeiros 64 bytes da configuração PCI em hexadecimal.
  • -xxx         Mostra toda a configuração PCI em hexadecimal.

# lspci

0000:00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX – 82443BX/ZX/DX Host bridge (rev 01)

0000:00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX – 82443BX/ZX/DX AGP bridge (rev 01)

0000:00:07.0 ISA bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 08)

0000:00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01)

0000:00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB

0000:00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 08)


O Kernel do Linux possui um robusto sistema de reconhecimento de hardware e suporte a diversos dispositivos. Este sistema foi implementado principalmente através do sysfs, udev e do d-bus.

Veja como utilizar o comando lspci com esta pequena aula prática:

Aprenda muito mais sobre Linux em nosso curso online. Você pode fazer a matrícula aqui com trial de 7 dias grátis. Se você já tem uma conta, pode acessar aqui.

Gostou? Compartilhe 🙂

Open chat