Comment empêcher le sommeil wifi après une suspension

14

Chaque fois que j'ouvre le couvercle de mon ordinateur portable, je dois attendre quelques secondes que le wifi se reconnecte. Je me souviens que sous Windows, il était déjà connecté. J'ai besoin d'un moyen d'empêcher le wifi de se déconnecter en cas de suspension.

La réponse la plus proche que j'ai trouvée était /ubuntu//a/961460/613425 mais cela n'a pas fonctionné. J'ai également essayé la iwconfig wlan0 poweroffréponse, mais cela n'a pas fonctionné avant le redémarrage.

Guerlando OCs
la source
Ainsi, contrairement à la question que vous avez liée ci-dessus, votre WiFi n'est pas instable. Il se connecte et fonctionne correctement après avoir ouvert le couvercle et réveillé l'ordinateur portable du sommeil. Vous voulez que le WiFi se connecte plus rapidement. Que se passerait-il lorsque vous déplacez votre ordinateur portable à 32 kilomètres pendant qu'il dormait? Resterait-il toujours connecté?
user68186
@ user68186 il ne reste jamais connecté, même au même endroit après avoir rouvert le couvercle. Je dois attendre qu'il se reconnecte.
Guerlando OCs
Voulez-vous dire qu'il ne reste jamais connecté pendant qu'il dort? J'ai connu une fois quelqu'un qui parlait avant de dormir, mais mon ordinateur portable ne fait pas ça. Je ne pense pas que ce que vous voulez soit possible à moins que vous n'empêchiez complètement votre ordinateur portable de dormir.
user68186
1
@SebastianStark Razer Blade Stealth 2016 12,5 ". Il avait le comportement souhaité sur Windows
OC Guerlando
1
Quelle est la sortie iwconfig? Veuillez modifier votre question pour y fournir la sortie plutôt qu'ici dans les commentaires.
Fabby

Réponses:

14

Il existe deux façons d'activer le WiFi après le sommeil. Le premier est un correctif commun à Network Manager, comme vous pouvez le constater en répertoriant le fichier:

Désactivez ou activez les économies d'énergie comme illustré ci-dessous:

$ cat /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf
[connection]
wifi.powersave = 3
# Slow sleep fix: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1670041
#wifi.powersave = 2
  • Modifiez le fichier Network Manager illustré ci-dessus.
  • Passez WiFi.powersavede 2à 3(Activer l'économie d'énergie).
  • S'il est déjà configuré pour 3essayer de le régler sur 2(Désactiver l'économie d'énergie).
  • Après avoir enregistré le fichier exécuté sudo systemctl restart NetworkManager

Le second est un systemdscript qui recharge le module du noyau WiFi lors de la reprise de la suspension. Cela vient de cette réponse: les réseaux Wifi disponibles n'apparaissent pas soudainement :

Ce script est écrit pour iwlwifi` qui est le nom commun du pilote Intel. Si le vôtre est différent, changez ce nom ci-dessous:

#!/bin/sh

# NAME: /lib/systemd/system-sleep/iwlwifi-reset
# DESC: Resets Intel WiFi which can be flakey after a long suspend.
# DATE: Apr 1, 2017. Modified August 30, 2017.

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 'systemctl restart NetworkManager.service (SUPPRESSED)'
    /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

REMARQUE: Parfois, une simple réinitialisation du gestionnaire de réseau suffit. Dans ce cas, décommentez la ligne ci-dessus en la supprimant #. Commentez ensuite les deux lignes au-dessus en mettant #au début de ces deux lignes.

Vous devrez créer ce script, appelé iwlwifi-reset, avec sudopouvoirs et l'enregistrer dans le répertoire /lib/systemd/system-sleep. Puis marquez-le comme exécutable en utilisant:

chmod a+x /lib/systemd/system-sleep/iwlwifi-reset
WinEunuuchs2Unix
la source
eu le même problème avec Fedora 31 + XFCE (pas avec le shell gnome), la première façon de le résoudre.
jherek
2

Je pense que c'est lié à systemd. Vous pouvez créer un script qui démarre l'appareil wifi après la suspension. Essayez d'abord de le faire manuellement.

Ramy Samy
la source
2

Créez d'abord un nouveau script et rendez-le exécutable.

sudo touch /usr/lib/pm-utils/sleep.d/wakewifi
sudo chmod a+x /usr/lib/pm-utils/sleep.d/wakewifi

Puis éditez le script

sudo nano /usr/lib/pm-utils/sleep.d/wakewifi

et le faire ressembler à quelque chose comme ça.

 #!/bin/sh

    case "$1" in
        resume)
            nmcli radio wifi on
    esac

pour vous assurer que nmcli radio wifi est la bonne commande, essayez de passer en mode veille, démarrez l'ordinateur et faites

sudo nmcli radio wifi on

si votre ordinateur se connecte ensuite au bon wifi, cela peut être une solution optionnelle pour vous. votre ordinateur devrait se connecter automatiquement. à votre point d'accès Wi-Fi enregistré.

BD Bear
la source