Lorsque je réveille mon ordinateur portable après une suspension de quelques instants, le signal WiFi est remplacé par les flèches haut et bas. La connexion fonctionne toujours, mais est quand même assez agaçante. Le redémarrage de Network Manager fonctionne, mais n’est qu’un correctif temporaire.
J'ai lu quelque part que c'est peut-être parce que la connexion est en train d'être renommée, ce qui la fait penser que je suis connecté via Ethernet au lieu du WiFi?
Comment puis-je réparer cela?
Edit: J'ai remarqué que cela se produit aussi parfois après l'activation/la désactivation du WiFi.
En utilisant Sudo, vous créez le fichier /lib/systemd/system-sleep/iwlwifi-reset
contenant:
#!/bin/sh
# NAME: /lib/systemd/system-sleep/iwlwifi-reset
# DESC: Resets Intel WiFi after a long suspend.
# DATE: Apr 1, 2017. Modified April 8, 2017.
# NOTE: Per AU comment restart network.
MYNAME=$0
restart_wifi() {
/usr/bin/logger $MYNAME 'restart_wifi BEGIN'
# /sbin/modprobe -v -r iwldvm # This removes iwlwifi too
# /sbin/modprobe -v iwlwifi # This starts iwldvm too
systemctl restart NetworkManager.service
/usr/bin/logger $MYNAME 'restart_wifi END'
}
/usr/bin/logger $MYNAME 'case=[' ${1}' ]'
case "${1}/${2}" in
hibernate|suspend|pre*)
;;
resume|thaw|post*)
restart_wifi;;
esac
Marquez le script comme exécutable en utilisant:
Sudo chmod a+x /lib/systemd/system-sleep/iwlwifi-reset
Pour vérifier l’exécution du script après l’interruption de l’utilisation suspendue:
cat /var/log/syslog | grep iwlwifi
Ne soyez pas trop excité si cela semble fonctionner pendant les tests car il arrive que ce script fonctionne avec une courte suspension mais ne fonctionne pas après une longue suspension.
Si cela ne fonctionne pas, avant d'essayer la méthode manuelle de la section suivante, placez la commande sleep 5
avant la ligne restart_wifi;;
.
Si la méthode automatique ne fonctionne pas avec les pouvoirs Sudo, créez le script /usr/local/bin/iwlwifi-reset
contenant:
#!/bin/sh
# NAME: /usr/lib/bin/iwlwifi-reset
# DESC: Manually reset Intel WiFi.
# DATE: Apr 1, 2017. Modified April 8, 2017.
# NOTE: Must call using Sudo POWERS.
MYNAME=$0
/usr/bin/logger $MYNAME 'restart_wifi BEGIN'
# modprobe -r iwldvm # This removes iwlwifi too
# modprobe iwlwifi # This starts iwldvm too
systemctl restart NetworkManager.service
/usr/bin/logger $MYNAME 'restart_wifi END'
Marquez le script comme exécutable en utilisant:
Sudo chmod a+x /usr/local/bin/iwlwifi-reset
Comme décrit dans la dernière section, vous pouvez vérifier /var/log/syslog la présence de messages lors de l'exécution de ce script, mais vous verrez les éventuels messages d'erreur dans votre terminal. en tous cas.
Pour appeler ce script, utilisez:
Sudo iwlwifi-reset
Vous n'avez pas besoin de spécifier le répertoire car /usr/local/bin
se trouve dans le chemin de recherche des commandes du terminal.
Edition du 8 avril 2017 Conformément aux commentaires sur les PO et ce How-To , des modifications ont été apportées au script. Au lieu de supprimer et de réinsérer les modules du noyau, le redémarrage des services réseau a été utilisé.
J'ai eu ce problème également avec mon HP pavilon G6, qui n'a pas vraiment commencé jusqu'à ce que je récupère un nouvel adaptateur USB. Après quelques recherches, j'ai découvert que les mauvais pilotes étaient utilisés, j'ai donc installé les bons pilotes (Ralink ) et ça a fonctionné. Vous n'avez pas mentionné que vous aviez un deuxième adaptateur, mais peut-être que vérifier pour savoir quels retours modprobe aiderait.
J'ai eu l'idée de la dernière réponse dans ce fil de discussion: le wifi ne fonctionne pas après la suspension après la mise à jour du 16.04