Como evitar o sono Wi-Fi após suspender

9

Sempre que abro a tampa do notebook, tenho que esperar alguns segundos para que o Wi-Fi seja reconectado. Lembro que no Windows já estava conectado. Eu preciso de uma maneira de impedir que o Wi-Fi desconecte quando suspenso.

A resposta mais próxima que encontrei foi link , mas não funcionou. Eu também tentei o iwconfig wlan0 poweroff na resposta, mas não funcionou nem antes da reinicialização.

    
por Guerlando OCs 05.04.2018 / 12:13

3 respostas

8

Existem duas maneiras de ativar o Wi-Fi depois de dormir. O primeiro é um patch comum para o Network Manager, como você pode ver, listando o arquivo:

Desligue ou ative a economia de energia conforme ilustrado abaixo:

$ 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
  • Edite o arquivo do Network Manager mostrado acima.
  • Altere WiFi.powersave de 2 para 3 (ative a economia de energia).
  • Se já estiver definido como 3 , tente defini-lo como 2 (Desativar economia de energia).
  • Depois de salvar o arquivo, execute sudo systemctl restart NetworkManager

O segundo é um script systemd que recarrega o módulo do kernel Wi-Fi ao retomar da suspensão. Vem desta resposta: Wifi redes disponíveis não aparecendo repentinamente :

Este script é escrito para iwlwifi ', que é o nome do driver comum da Intel. Se o seu for diferente, altere esse nome abaixo:

#!/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

exit

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

OBSERVAÇÃO: Às vezes, basta redefinir o gerenciador de rede e tudo que é necessário. Nesse caso, descomente a linha acima removendo # . Em seguida, comente as duas linhas acima, colocando # no início dessas duas linhas.

Você precisará criar esse script, chamado iwlwifi-reset , com sudo powers e salvá-lo no diretório /lib/systemd/system-sleep . Em seguida, marque-o como executável usando:

chmod a+x /lib/systemd/system-sleep/iwlwifi-reset
    
por WinEunuuchs2Unix 12.05.2018 / 17:32
2

Eu acho que isso está relacionado ao systemd. Você pode fazer um script que inicie o dispositivo Wi-Fi após a suspensão. Apenas tente fazer isso manualmente primeiro.

    
por Ramy Samy 12.05.2018 / 14:47
2

Primeiro crie um novo script e torne-o executável.

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

Em seguida, edite o script

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

e faça com que pareça algo assim.

 #!/bin/sh

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

para garantir que o rádio nmcli wifi ligado seja o comando correto, tente entrar no modo de suspensão, inicie o computador e faça

sudo nmcli radio wifi on

se o seu computador conectar-se ao wifi correto, isso pode ser uma solução opcional para você. seu computador deve se conectar automaticamente. ao seu ponto de acesso wi-fi salvo.

    
por BD Bear 12.05.2018 / 15:02