Eu passei a maior parte de uma SEMANA arrancando meu cabelo sobre isso, e é imperativo que eu tenha esse trabalho o mais rápido possível.
BTW, este é um post estreitamente relacionado para qualquer um que possa ajudar:
HISTÓRIA DE VOLTA:
Eu tenho um MacMini com uma configuração de tri-boot. Ele está executando o macOS Sierra, o Ubuntu 16.04 e agora o Ubuntu 10.04. Não consigo obter nenhuma conexão de rede / internet no Ubuntu 10. Ele não reconhecerá minhas interfaces Ethernet ou Wi-Fi.
Agora, antes de você me dizer que sou SOL porque 10 alcançou a EOL, deixe-me explicar que preciso usar 10 para uma programação específica e criar uma ROM herdada do Android de acordo com a documentação atual e oficial do Google. Não ter internet ou conexão de rede dificultará muito a utilização deste SO em geral, e a instalação de todas as dependências que eu precisar.
Eu decidi abandonar qualquer tentativa de fazer o Wi-Fi funcionar, e apenas focar na ethernet por enquanto, porque pareço estar mais perto disso. Seria impossível listar tudo o que tentei, por isso vou postar o que parece ser o trabalho QUASE ...
O QUE FUNCIONA:
O novo sistema operacional não tem nenhum problema com o meu NIC.
Comando do Ubuntu 16:
sudo lshw -C network
Resultado:
*-network
description: Ethernet interface
product: NetXtreme BCM57766 Gigabit Ethernet PCIe
vendor: Broadcom Corporation
physical id: 0
bus info: pci@0000:01:00.0
logical name: enp1s0f0
version: 01
serial: 68:5b:35:c3:63:5a
capacity: 1Gbit/s
width: 64 bits
clock: 33MHz
capabilities: pm vpd msi msix pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=tg3 driverversion=3.137 firmware=57766a-v1.13 latency=0 link=no multicast=yes port=twisted pair
resources: irq:16 memory:a0400000-a040ffff memory:a0410000-a041ffff
*-network
description: Wireless interface
product: BCM4331 802.11a/b/g/n
vendor: Broadcom Corporation
physical id: 0
bus info: pci@0000:02:00.0
logical name: wlp2s0
version: 02
serial: a8:86:dd:aa:71:9f
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=wl0 driverversion=6.30.223.248 (r487574) ip=192.168.1.4 latency=0 multicast=yes wireless=IEEE 802.11abg
resources: irq:17 memory:a0600000-a0603fff
O QUE NÃO FUNCIONA:
Comando do Ubuntu 10:
sudo lshw -C network
Resultado:
*-network UNCLAIMED
description: Ethernet controller
product: Broadcom Corporation
vendor: Broadcom Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: 01
width: 64 bits
clock: 33MHz
capabilities: pm vpd msi msix pciexpress bus_master cap_list
configuration: latency=0
resources: memory:a0400000-a040ffff(prefetchable) memory:a0410000-a041ffff(prefetchable)
*-network UNCLAIMED
description: Network controller
product: Broadcom Corporation
vendor: Broadcom Corporation
physical id: 0
bus info: pci@0000:02:00.0
version: 02
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list
configuration: latency=0
resources: memory:a0600000-a0603fff
Então eu faço isso:
sudo lspci -nn | grep 0200
E receba meu PCI.Id:
01:00.0 Ethernet controller [0200]: Broadcom Corporation Device [14e4:1686] (rev 01)
Então, eu carrego o driver tg3 (que é o que meu Ubuntu 16 em operação mostra que é usado naquele lado da máquina).
sudo modprobe tg3
Em seguida, forço o driver e o dispositivo a serem vinculados da seguinte forma:
echo "14e4 1686" | sudo tee /sys/module/tg3/drivers/pci:tg3/new_id
Eu verifico os resultados:
sudo lshw -C network
Retorna (depois de uma longa pausa ...):
*-network DISABLED
description: Ethernet interface
product: Broadcom Corporation
vendor: Broadcom Corporation
physical id: 0
bus info: pci@0000:01:00.0
logical name: eth0
version: 01
serial: 68:5b:35:c3:63:5a
capacity: 1GB/s
width: 64 bits
clock: 33MHz
capabilities: pm vpd msi msix pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=tg3 driverversion=3.102 duplex=half latency=0 link=no multicast=yes port=twisted pair
resources: irq:16 memory:a0400000-a040ffff(prefetchable) memory:a0410000-a041ffff(prefetchable)
*-network UNCLAIMED
description: Network controller
product: Broadcom Corporation
vendor: Broadcom Corporation
physical id: 0
bus info: pci@0000:02:00.0
version: 02
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list
configuration: latency=0
resources: memory:a0600000-a0603fff
Então, parece que estou perto! Mas por que a ethernet está desativada?
Eu reinicio o gerenciador de rede:
sudo service network-manager restart
Ele retorna sucesso:
network-manager start/running, process 202
Eu habilito eth0 (ou posso reverter a ordem dos dois últimos passos)
sudo ifconfig eth0 up
Retorna (depois de uma longa pausa ...)
SIOCSIFFLAGS: No such device
Então, parece que o problema ... Do que eu vi lá fora, isso é provavelmente o resultado da falta de firmware? Uma inspeção do tg3 mostra que possui firmware associado a ele. MAS note que na minha saída Ubnutu 16 lshw
, a ethernet mostra um driver AND firmware. No Ubuntu 10, ele mostra apenas um driver - sem mencionar o firmware.
Estou certo sobre a minha suspeita? Para onde eu vou daqui? Como posso ligar o firmware com força também?