Não consigo me conectar ao WiFi do meu notebook. Funcionou bem por muito tempo até recentemente. Houve atualizações para linux-firmware.
Não percebi de imediato porque normalmente tenho meu notebook conectado por Ethernet - o que funciona bem.
Parece que algo está errado no final do notebook. Como descarto uma falha de hardware?
Detalhes:
Finalmente me lembrei de procurar no dmesg e descobri que
Ele estava tentando carregar iwlwifi-7265D-19.ucode ou iwlwifi-7265D-18.ucode, mas eu só tenho 10,12,13,16,17,21,22,27,29
Então eu tentei (como uma medida paliativa)
sudo ln -sf iwlwifi-7265D-17.ucode iwlwifi-7265D-19.ucode
que eliminou o erro:
bigbird@sananda:/lib/firmware$ dmesg -T | grep wifi
[Sun Feb 18 01:48:52 2018] iwlwifi 0000:07:00.0: loaded firmware version 17.352738.0 op_mode iwlmvm
[Sun Feb 18 01:48:53 2018] iwlwifi 0000:07:00.0: Detected Intel(R) Dual Band Wireless AC 7265, REV=0x210
[Sun Feb 18 01:48:53 2018] iwlwifi 0000:07:00.0: L1 Enabled - LTR Enabled
[Sun Feb 18 01:48:53 2018] iwlwifi 0000:07:00.0: L1 Enabled - LTR Enabled
[Sun Feb 18 01:48:53 2018] iwlwifi 0000:07:00.0 wlp7s0: renamed from wlan0
bigbird@sananda:/lib/firmware$
Mas não resolveu o problema.
bigbird@sananda:/lib/firmware$ rfkill unblock wifi
bigbird@sananda:/lib/firmware$ rfkill unblock wlan
bigbird@sananda:/lib/firmware$ rfkill list
0: Toshiba Bluetooth: Bluetooth
Soft blocked: no
Hard blocked: no
1: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
2: phy0: Wireless LAN
Soft blocked: no
Hard blocked: yes
bigbird@sananda:/lib/firmware$
Eu encontrei isso, mas realmente não entendo:
https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi/core_release
Há muitos avisos de "fim da vida útil" lá, mas este notebook tem apenas alguns anos.
Hardware:
Toshiba Satellite S55 C5274
Kubuntu 16.04
Technicolor Gateway TC8717 (BATC8717T V4)
Meu smartphone pode acessar o WiFi bem, então está funcionando.
Eu posso acessar meu gateway via cabo Ethernet e parece bom.
Corrida
rfkill unblock wifi
ou wlan, com ou sem sudo afeta apenas o soft block.
A alternância wifi no meu teclado liga e desliga o bloco suave, mas deixa o bloco rígido no lugar.
Não tenho firewall rodando no meu notebook e só tenho um IP totalmente externo bloqueado usando iptables.
sudo lshw
mostra:
*-pci:1
description: PCI bridge
product: Wildcat Point-LP PCI Express Root Port #3
vendor: Intel Corporation
physical id: 1c.2
bus info: pci@0000:00:1c.2
version: e3
width: 32 bits
clock: 33MHz
capabilities: pci normal_decode bus_master cap_list
configuration: driver=pcieport
resources: irq:43 memory:b3300000-b33fffff
*-network DISABLED
description: Wireless interface
product: Wireless 7265
vendor: Intel Corporation
physical id: 0
bus info: pci@0000:07:00.0
logical name: wlp7s0
version: 61
serial: dc:53:60:cb:27:17
width: 64 bits
clock: 33MHz
capabilities: bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=iwlwifi driverversion=4.4.0-112-generic firmware=17.352738.0 latency=0 link=no mu$
resources: irq:53 memory:b3300000-b3301fff
bigbird@sananda:~/bin$ sudo ip -a link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp8s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 54:ab:3a:0d:4f:a4 brd ff:ff:ff:ff:ff:ff
3: wlp7s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether dc:53:60:cb:27:17 brd ff:ff:ff:ff:ff:ff
bigbird@sananda:~/bin$
Finalmente o WiFi funcionou - usando um adaptador externo! Demorou apenas onze meses.
Primeiro, tentei um adaptador Penguin PAU06, mas mesmo com o suporte deles, não consegui fazê-lo funcionar.
Acabei de comprar outro adaptador WiFi da ThinkPenguin e, a princípio, também não funcionou. Mas eles tinham instruções de como desabilitar a placa WiFi interna (dentro do notebook) e foi isso que fez o adaptador ThinkPenguin funcionar. Também fez o Panda funcionar.
O truque é:
Encontre seu ID (não tenho certeza de que tipo de ID é. Acho que é um ID de dispositivo de hardware):
E então crie uma
udev
regra que desabilita e coloque em/etc/udev/rules.d/81-wireless-pci.rules
:Observe que o ID é inserido em dois lugares no comando acima. O ID real provavelmente será diferente em outros sistemas.
Não tenho certeza se era necessário, mas reiniciei depois de adicionar o arquivo acima.
Como encontrar adaptadores WiFi USB que funcionem no Linux é aparentemente pior do que fazer placas de vídeo funcionarem, aqui estão os dois modelos que agora funcionam no meu sistema: