Esistono due modi per abilitare il WiFi dopo il sonno. La prima è una patch comune a Network Manager, come puoi vedere, ho elencato il file:
Disattiva o abilita il risparmio energetico come illustrato di seguito:
$ 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
- Modifica il file di Network Manager mostrato sopra.
- Passa
WiFi.powersave
da 2
a 3
(Abilita risparmio energetico).
- Se è già impostato per
3
provare a impostarlo su 2
(Disabilita risparmio energetico).
- Dopo aver salvato il file eseguito
sudo systemctl restart NetworkManager
Il secondo è uno systemd
script che ricarica il modulo del kernel WiFi quando riprende dalla sospensione. Viene da questa risposta: le reti WiFi disponibili non si presentano all'improvviso :
Questo script è scritto per iwlwifi` che è il nome comune del driver Intel. Se il tuo è diverso, cambia il nome qui sotto:
#!/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
NOTA: a volte è sufficiente reimpostare semplicemente il gestore di rete. In tal caso, annulla la commento della riga sopra rimuovendola #
. Quindi commentare le due righe sopra di esso mettendo #
all'inizio di quelle due righe.
Dovrai creare questo script, chiamato iwlwifi-reset
, con sudo
poteri e salvarlo nella directory /lib/systemd/system-sleep
. Quindi contrassegnalo come eseguibile usando:
chmod a+x /lib/systemd/system-sleep/iwlwifi-reset