Mon wifi ne fonctionne pas après la suspension du 15.04. Je peux cliquer sur mon chemin vers le succès sur l'icône wifi dans la barre de menus (et sur l'option d'activer le wifi), mais je souhaite utiliser des scripts pour automatiser la procédure. Voici ma tentative
1) créer le script bash exécutable /etc/pm/sleep.d/10_resume_wifi
avec le contenu
#!/bin/sh
case "$1" in
hibernate|suspend) ;;
thaw|resume)
nmcli r wifi off && nmcli r wifi on ;;
esac
2) créer le fichier exécutable /etc/system.d/system/wifi-resume.service
avec le contenu
[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
et lancez Sudo systemctl enable wifi-resume.service
Cela ne fonctionne pas, et je reçois les lignes suivantes de dmesg
après avoir repris la suspension.
[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)
Après avoir cliqué mon chemin vers le wifi, je reçois un résultat légèrement différent 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
Des suggestions sur les raisons pour lesquelles l'approche basée sur les scripts ne fonctionne pas? Je suis nouveau à cela, donc il y a probablement plusieurs erreurs. Merci d'avance!
Après un peu plus de recherches, j'ai trouvé un seul script (posté ici ) qui connecte mon ordinateur au wifi après la suspension. En bref, j'ai créé le script exécutable /etc/systemd/system/wifi-resume.service
avec le contenu suivant:
[Unit]
Description=Local system resume actions
After=suspend.target
[Service]
Type=oneshot
ExecStart=/bin/systemctl restart network-manager.service
[Install]
WantedBy=suspend.target
et a lancé la commande Sudo systemctl enable wifi-resume.service
Merci beaucoup à Sean pour la solution.
Solution ce qui fonctionne bien pour moi:
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
Collez ce code dans le fichier:
#!/bin/sh
case $1 in
resume|thaw)
Sudo /bin/systemctl restart network-manager.service
;;
esac
Après de nombreuses tentatives pour résoudre ce problème ennuyeux, j'ai proposé cette solution. Créez un fichier exécutable sous /etc/pm/sleep.d/
et nommez-le i.e. 10_resume_wifi
, comme suit:
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
Collez ce code dans le fichier:
#!/bin/sh
case $1 in
suspend|suspend_hybrid|hibernate)
Sudo nmcli n off
;;
resume|thaw)
Sudo nmcli n on
;;
esac
Enregistrez et fermez le fichier, c'est tout.
C'était la seule solution qui fonctionnait tout le temps. Remarque: Les autres solutions que j'ai trouvées utilisaient une version plus ancienne de nmcli.