Je gère quelques centaines d'ordinateurs portables Dell 5290, tous exécutant Ubuntu 16.04. À l'occasion, certains de ces ordinateurs portables démarrent le matin sans accès wifi. Lorsque je dépanne, je constate que le LAN sans fil a été bloqué.
$ rfkill list
0: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
1: phy0: Wireless LAN
Soft blocked: yes
Hard blocked: no
ou
$ Sudo lshw -C network
*-network DISABLED
description: Wireless interface
product: Intel Corporation
vendor: Intel Corporation
physical id: 0
bus info: pci@0000:01:00.0
logical name: wlan0
version: 78
serial: 88:b1:11:6c:f0:f7
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=iwlwifi driverversion=4.15.0-47-generic firmware=34.0.1 latency=0 link=no multicast=yes wireless=IEEE 802.11
resources: irq:145 memory:d1500000-d1501fff
Bien sûr, je pourrais facilement supprimer ce bloc logiciel avec rfkill unblock all
. Je pourrais même écrire un chien de garde pour surveiller l'interface wifi et désactiver les blocs logiciels éternellement.
Mais ma question est de savoir comment ce bloc souple est réellement originaire? Les ordinateurs sont des kiosques gérés à distance. Il n'y a pas de clavier ou de souris pour permettre à quelqu'un d'activer manuellement un bloc logiciel.
dmesg
a un commentaire sur les problèmes de réglementation de la plate-forme que, lorsque je regarde la sortie de dmesg
sur un appareil fonctionnel, je ne vois pas. Aucune idée si cela est pertinent.
$ dmesg | grep -i firmware
[ 0.028000] Spectre V2 : Enabling Restricted Speculation for firmware calls
[ 0.065082] ACPI: [Firmware Bug]: BIOS _OSI(Linux) query ignored
[ 2.216861] [drm] Finished loading DMC firmware i915/kbl_dmc_ver1_01.bin (v1.1)
[ 2.752085] Bluetooth: hci0: Firmware revision 0.1 build 173 week 45 2017
[ 2.931360] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 2.961437] iwlwifi 0000:01:00.0: loaded firmware version 34.0.1 op_mode iwlmvm
Vérifier votre /var/lib/NetworkManager/NetworkManager.state
fichier et voir si WirelessEnabled=false
. systemd-rfkill
semble vérifier ce fichier et bloquer votre interface s'il est trouvé. Définissez sur true et voyez si cela résout le problème.