Como verificar se um adaptador de rede está presente no Linux

LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como verificar se um adaptador de rede está presente no seu sistema Linux. Exploraremos três métodos comuns para alcançar este objetivo.

Primeiramente, você usará o comando lshw com a opção -C network para listar informações detalhadas sobre o seu hardware de rede. Em seguida, você verificará a presença de interfaces de rede inspecionando o conteúdo do diretório /sys/class/net. Finalmente, você utilizará o comando lspci para listar dispositivos PCI e filtrar por controladores de rede, fornecendo outra maneira de identificar seus adaptadores de rede. Ao completar estas etapas, você adquirirá habilidades práticas no diagnóstico da presença de hardware de rede em um sistema Linux.

Verificar adaptadores com lshw -C network

Nesta etapa, exploraremos como identificar os adaptadores de rede conectados ao seu sistema usando o comando lshw. lshw significa "list hardware" (listar hardware) e é uma ferramenta poderosa para obter informações detalhadas sobre a configuração de hardware do seu sistema.

Para listar especificamente os adaptadores de rede, usamos a opção -C seguida pelo nome da classe, que é network.

Abra seu terminal, caso ainda não esteja aberto. Você pode fazer isso clicando no ícone Xfce Terminal no lado esquerdo da sua área de trabalho.

Agora, digite o seguinte comando e pressione Enter:

sudo lshw -C network

Vamos detalhar este comando:

  • sudo: Como aprendemos antes, isso nos permite executar o comando com privilégios de superusuário, o que geralmente é necessário para acessar informações detalhadas sobre o hardware.
  • lshw: O comando para listar o hardware.
  • -C network: Esta opção filtra a saída para mostrar apenas os dispositivos pertencentes à classe "network".

Você verá uma saída semelhante a esta (os detalhes exatos variarão dependendo da configuração da máquina virtual):

  *-network
       description: Ethernet interface
       product: Ethernet controller
       vendor: Red Hat, Inc.
       physical id: 3
       bus info: pci@0000:00:03.0
       logical name: eth0
       version: 00
       serial: 52:54:00:xx:xx:xx
       size: 1Gbit/s
       capacity: 10Gbit/s
       width: 32 bits
       clock: 66MHz
       capabilities: pm bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autoneg negotiated
       configuration: autonegotiation=on broadcast=yes driver=virtio_net driverversion=1.0.0 ip=172.18.0.x latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
       resources: irq:24 ioport:c040(size=32) memory:fe000000-fe000fff

Esta saída fornece muitas informações sobre seu adaptador de rede, incluindo:

  • description: O que o dispositivo é (interface Ethernet).
  • product e vendor: O fabricante e o modelo do hardware.
  • logical name: O nome que o sistema operacional usa para esta interface (por exemplo, eth0). Isso é importante para configurar as configurações de rede.
  • serial: O endereço MAC do adaptador de rede.
  • size e capacity: A velocidade atual e a capacidade máxima da conexão.
  • configuration: Detalhes sobre como a interface está configurada atualmente, incluindo seu endereço IP, se atribuído.

Compreender esta saída ajuda você a identificar suas interfaces de rede e solucionar problemas de rede.

Clique em Continuar para prosseguir para a próxima etapa.

Verificar interfaces em /sys/class/net

No Linux, o sistema de arquivos /sys fornece uma visão do modelo de dispositivo do kernel. É um sistema de arquivos virtual, o que significa que os arquivos e diretórios dentro dele não são armazenados em seu disco no sentido tradicional, mas são gerados pelo kernel para representar informações do sistema.

Especificamente, /sys/class/net é um diretório que contém links simbólicos para todas as interfaces de rede detectadas pelo sistema. Os nomes desses links correspondem aos nomes lógicos das interfaces de rede, como eth0 que vimos na etapa anterior.

Vamos listar o conteúdo deste diretório para ver as interfaces de rede. Usaremos o comando ls, que é usado para listar arquivos e diretórios.

Digite o seguinte comando em seu terminal e pressione Enter:

ls /sys/class/net/

Você deve ver uma saída semelhante a esta:

eth0  lo
  • eth0: Esta é a interface Ethernet que identificamos usando lshw na etapa anterior.
  • lo: Isso significa "loopback" (retorno). É uma interface virtual especial que seu computador usa para se comunicar consigo mesmo. É essencial para o funcionamento correto do software de rede, mesmo quando seu computador não está conectado a uma rede física.

A presença de eth0 e lo neste diretório confirma que o sistema reconhece essas interfaces de rede. Este diretório é uma maneira rápida de ver quais interfaces de rede estão disponíveis em seu sistema.

Clique em Continuar para prosseguir.

Inspecionar hardware com lspci

Nesta etapa, usaremos o comando lspci para listar informações sobre os dispositivos PCI conectados ao seu sistema. PCI (Peripheral Component Interconnect) é um barramento padrão que conecta dispositivos de hardware à placa-mãe do computador. Muitos dispositivos, incluindo placas de rede, placas de vídeo e controladores de armazenamento, são conectados via PCI ou seu sucessor, PCI Express (PCIe).

O comando lspci é útil para identificar rapidamente o hardware conectado e suas informações básicas.

Digite o seguinte comando em seu terminal e pressione Enter:

lspci

Você verá uma lista de dispositivos PCI. A saída terá uma aparência semelhante a esta:

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 controller: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:01.2 USB controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (rev 01)
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Red Hat, Inc. QXL Paravirtual graphic driver
00:03.0 Ethernet controller: Red Hat, Inc. Virtio network device
00:04.0 Communication controller: Red Hat, Inc. Virtio console
00:05.0 SCSI storage controller: Red Hat, Inc. Virtio SCSI
00:06.0 Unclassified device [0000]: Red Hat, Inc. Virtio balloon
00:07.0 Audio device: Intel Corporation 82801AA AC'97 Audio Controller (rev 01)

Cada linha representa um dispositivo PCI. O formato é tipicamente Bus:Device.Function Class: Vendor Product.

  • Bus:Device.Function: Identifica a localização do dispositivo no barramento PCI.
  • Class: Descreve o tipo de dispositivo (por exemplo, Host bridge, Ethernet controller, VGA compatible controller).
  • Vendor e Product: Identificam o fabricante e o modelo específico do dispositivo.

Observe a linha que diz Ethernet controller: Red Hat, Inc. Virtio network device. Isso corresponde ao adaptador de rede que vimos com lshw e em /sys/class/net. lspci oferece uma perspectiva diferente sobre o hardware, focando no barramento PCI.

Você pode usar lspci com opções como -v para uma saída mais detalhada ou -nn para mostrar os IDs do fornecedor e do dispositivo em um formato numérico, o que é útil para pesquisar informações de hardware online.

Por exemplo, tente:

lspci -v

Isso fornecerá informações muito mais detalhadas sobre cada dispositivo. Pressione q para sair da saída detalhada quando terminar de visualizá-la.

Clique em Continuar para finalizar este laboratório.

Resumo

Neste laboratório, aprendemos como verificar a presença de adaptadores de rede no Linux usando várias ferramentas de linha de comando. Começamos usando o comando sudo lshw -C network para listar informações detalhadas sobre as interfaces de rede, incluindo sua descrição, fornecedor, produto e detalhes de configuração. Este comando fornece uma visão geral abrangente do hardware.

Em seguida, exploramos o diretório /sys/class/net, que fornece um link simbólico para cada interface de rede presente no sistema, oferecendo uma maneira rápida de verificar sua existência. Finalmente, utilizamos o comando lspci para inspecionar o barramento PCI e identificar os controladores de rede, filtrando a saída por "Ethernet controller" ou descrições semelhantes, fornecendo outro método para confirmar a presença do hardware de rede. Essas etapas demonstram coletivamente diferentes abordagens para identificar adaptadores de rede em um ambiente Linux.