Kudzu - Adição e Remoção de Hardware
Colaboração: Rafael Moraes da Costa
Data de Publicação: 14 de setembro de 2010
Segundo a Wikipedia, Kudzu ou Pueraria lobata é uma planta de origem Japonesa que além de produzir belas flores, sua raiz é fonte de um tipo de amido bastante utilizado na culinária do Leste asiático. Entretanto, o Kudzu aqui abordado não é uma planta e muito menos um ingrediente. Além de dar nome a planta citada acima, Kudzu é o nome de uma ferramenta presente em sistemas operacionais RHEL e derivados.
O kudzu escaneia o sistema em busca de novos dispositivos de Hardware e testa os dispositivos que já estão listados em sua base de dados encontrada em /etc/sysconfig/hwconf
(¹)
Contudo, se não existe uma base de dados, o kudzu busca informações sobre dispositivos que já estão configurados, nos arquivos /etc/mod-probe.conf
, /etc/sysconfig/network-scripts
e /etc/X11/xorg.conf
.
O arquivo hwconf é atualizado a cada boot do sistema (o script de inicialização /etc/init.d/kudzu
é automaticamente executado ) ou pela execução do comando kudzu
sem argumentos.
Quando um dispositivo previamente listado não é identificado no escaneamento do kudzu, este é imediatamente removido assim como a sua referência no arquivo hwconf
. Porém, se pelo contrário, um novo dispositivo for encontrado, o kudzu configurará e adicionará o dispositivo ao arquivo hwconf. No processo de adição do novo dispositivo o kudzu utiliza alguns arquivos localizados em /usr/share/hwdata
como referência para a configuração.
Utilização
Verificar sistema por novos Hardwares ou Hardwares removidos ( Atualiza o arquivo hwconf )
#kudzu
Mostrar como o comando deve ser utilizado
#kudzu --usage Utilização: kudzu [-?] [-?|--help] [--usage] [-s|--safe] [-t|--timeout INT] [-p|--probe] [-b|--bus STRING] [-c|--class STRING] [-f|--file arquivo a partir do qual as informações sobre o hardware devem ser lidas] [-k|--kernel versão do kernel] [-q|--quiet]
Listar as principais opções de uso
#kudzu --help Utilização: kudzu [OPÇÃO...] -s, --safe fazer apenas procuras 'seguras' que não perturbaram o hardware -t, --timeout=INT definir tempo limite em segundos -p, --probe apenas sondar, escrever informações no stdout -b, --bus=STRING sondar apenas o barramento especificado -c, --class=STRING sondar apenas pela 'classe' especificada -f, --file=arquivo a partir do qual as informações sobre o hardware devem ser lidas ler hardware sondado de um arquivo -k, --kernel=versão do kernel procurar pelos módulos de uma versão específica do kernel -q, --quiet faça a configuração que não requer uma entrada de usuário Help options: -?, --help Show this help message —usage Display brief usage message
Listar Hardware identificado (Sem efetuar qualquer configuração ou remoção)
#kudzu -p - class: OTHER bus: PCI detached: 0 driver: i2c-piix4 desc: "Intel Corporation 82371AB/EB/MB PIIX4 ACPI" vendorId: 8086 deviceId: 7113 subVendorId: 0000 subDeviceId: 0000 pciType: 1 pcidom: 0 pcibus: 0 pcidev: 7 pcifn: 0 ...
Listar Hardware por bus
#kudzu -p -b USB - class: OTHER bus: USB detached: 0 desc: "Linux 2.6.18-194.11.3.el5 ehci_hcd EHCI Host Controller" usbclass: 9 usbsubclass: 0 usbprotocol: 0 usbbus: 1 usblevel: 0 usbport: 0 usbdev: 1 vendorId: 0000 deviceId: 0000 usbmfr: Linux 2.6.18-194.11.3.el5 ehci_hcd usbprod: EHCI Host Controller ...
Listar Hardware por classe
#kudzu -p -c IDE - class: IDE bus: PCI detached: 0 driver: ata_piix desc: "Intel Corporation 82371AB/EB/MB PIIX4 IDE" vendorId: 8086 deviceId: 7111 subVendorId: 0000 subDeviceId: 0000 pciType: 1 pcidom: 0 pcibus: 0 pcidev: 1 pcifn: 1
Buscar por módulos por versão do Kernel
#kudzu --kernel=2.6.18-194.11.3.el5
#kudzu --kernel
#kudzu --kernel=`uname -r`
Ler informações de Hardware diretamente de um arquivo
#kudzu --file=hardware.txt
Buscar Hardware de maneira segura, ou seja, não efetua qualquer alteração, a
#kudzu --safe
(¹) O arquivo /etc/sysconfig/hwconf
não deve ser editado manualmente, todas as informações ali contidas são escritas quando o kudzu é executado.
Observações
- O site VMTS recomenda que o kudzu seja utilizado com bastante cautela quando se trata de um ambiente com virtualização, visto que é possível que o kudzu tente remover algum hardware que está sendo utilizado exclusivamente em uma máquina virtual.
- Por vezes o kudzu pode tornar a inicialização lenta ao procurar novos hardwares, ele pode ser desativado com o comando chkconfig kudzu off.
Rafael Moraes, é Analista de Suporte e Infraestrutura para sistemas Linux e também Instrutor em cursos preparatórios LPI. Possui as certificações LPIC-1, LPIC-2, ITIL Foundations e CISCO CCDA.