“Wifi está desativado por meio de troca de hardware” após ser suspenso

2

Estou executando o Ubuntu 14.04 no meu laptop HP 15-P234TX. Toda vez que eu fecho a tampa ou a suspendo, a rede pára de funcionar até que eu reinicie a coisa toda. Eu não posso clicar no enable wifi como diz "wifi está desativado por switch de hardware". Tanto quanto eu posso dizer eu não tenho um interruptor em qualquer lugar no caso.  Eu tentei executar lista rfkill todos e obter o seguinte

rfkill list all

1: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: yes

rfkill desbloquear tudo não tem efeito

__

lspci -knn | grep Net -A2

08:00.0 Network controller [0280]: Intel Corporation Wireless 3160 [8086:08b3] (
rev 83)
Subsystem: Intel Corporation Dual Band Wireless-AC 3160 [8086:0070]
Kernel driver in use: iwlwifi

Como corrijo isso?

    
por Snowflake 04.06.2015 / 11:23

1 resposta

0

Este 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 14.06.2018 / 12:59