no wifi depois de suspender em 15.04 [duplicata]

14

Meu wifi não está funcionando após a suspensão em 15.04. Eu posso clicar em meu caminho para o sucesso no ícone do Wi-Fi na barra de menu (e a opção habilitar wifi), mas eu quero usar scripts para automatizar o procedimento. Aqui está minha tentativa

1) crie script bash executável /etc/pm/sleep.d/10_resume_wifi com o conteúdo

#!/bin/sh
  case "" in
   hibernate|suspend) ;;
   thaw|resume)
      nmcli r wifi off && nmcli r wifi on ;;
esac

2) crie o arquivo executável /etc/system.d/system/wifi-resume.service com o conteúdo

[Unit]
Description=Restart wifi after waking up
After=suspend.target

[Service]
Type=simple
ExecStart=-/etc/pm/sleep.d/10_resume_wifi

[Install]
WantedBy=suspend.target

e execute sudo systemctl enable wifi-resume.service

Isso não está funcionando e recebo as seguintes linhas de dmesg depois de retomar da suspensão

[11168.786104] cfg80211: World regulatory domain updated:
[11168.786111] cfg80211:  DFS Master region: unset
[11168.786113] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[11168.786119] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[11168.786124] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[11168.786128] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm), (N/A)
[11168.786133] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[11168.786137] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[11168.968257] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[11169.004818] ata3: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
[11169.006600] ata3.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out
[11169.009053] ata3.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out
[11169.009061] ata3.00: configured for UDMA/100
[11169.200846] firewire_core 0000:04:00.0: rediscovered device fw0
[11171.088442] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[11171.089310] ata1.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out
[11171.090296] ata1.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out
[11171.090469] ata1.00: configured for UDMA/100
[11171.615861] ERROR @wl_cfg80211_scan : WLC_SCAN error (-22)

Depois de clicar em meu caminho para o wifi, recebo uma saída ligeiramente diferente de dmesg

[11331.635796] cfg80211: Calling CRDA for country: US
[11331.639456] cfg80211: Regulatory domain changed to country: US
[11331.639465] cfg80211:  DFS Master region: FCC

Alguma sugestão de por que a abordagem baseada em script não está funcionando? Eu sou novo nisso, então provavelmente há vários erros. Obrigado antecipadamente!

    
por wutangforever 18.06.2015 / 18:11

3 respostas

24

Depois de pesquisar um pouco mais, encontrei um único script (postado aqui ) que conecta meu computador ao wifi após a suspensão. Em suma, criei o script executável /etc/systemd/system/wifi-resume.service com o seguinte conteúdo:

[Unit]
Description=Local system resume actions
After=suspend.target

[Service]
Type=oneshot
ExecStart=/bin/systemctl restart network-manager.service

[Install]
WantedBy=suspend.target

e executou o comando sudo systemctl enable wifi-resume.service

Muito obrigado ao Sean pela solução.

    
por wutangforever 30.06.2015 / 05:55
6

Solução que funciona bem para mim:

sudo touch /etc/pm/sleep.d/10_restart_network_manager
sudo chmod +x /etc/pm/sleep.d/10_restart_network_manager
sudo gedit /etc/pm/sleep.d/10_restart_network_manager

Cole este código dentro do arquivo:

#!/bin/sh

case  in
    resume|thaw)
        sudo /bin/systemctl restart network-manager.service
    ;;
esac
    
por Andrey Izman 22.10.2015 / 01:18
4

Depois de muitas tentativas neste problema chato, encontrei esta solução. Crie um arquivo executável em /etc/pm/sleep.d/ e nomeie-o, por exemplo, 10_resume_wifi , desta forma:

sudo touch /etc/pm/sleep.d/10_resume_wifi
sudo chmod +x /etc/pm/sleep.d/10_resume_wifi
sudo gedit /etc/pm/sleep.d/10_resume_wifi

Cole este código dentro do arquivo:

#!/bin/sh

case  in
     suspend|suspend_hybrid|hibernate)
        sudo nmcli n off
        ;;
     resume|thaw)
        sudo nmcli n on
        ;;
esac

Salve e feche o arquivo, é isso.

Esta foi a única solução que funcionou o tempo todo. Observação: Outras soluções que encontrei usaram uma versão mais antiga de nmcli .

    
por DekwoKybon 20.07.2015 / 16:59