Las redes inalámbricas no funcionan después de reanudar en Ubuntu 14.04

79

[Actualización]:
El mismo problema existe en Kubuntu y se resuelve de la misma manera.
[Resuelto]:
Al aplicar el siguiente comando nmcli nmobtuve lo siguiente:

Antes de suspender

RUNNING         STATE           WIFI-HARDWARE   WIFI       WWAN-HARDWARE   WWAN      
running         connected       enabled         enabled    enabled         enabled  

como puede ver, el estado está conectado y el resto está habilitado y ejecutándose

Después de suspender

RUNNING         STATE           WIFI-HARDWARE   WIFI       WWAN-HARDWARE   WWAN      
running         asleep          enabled         enabled    enabled         disabled

como puede ver, el estado está dormido, lo que significa que nuestro querido administrador de red todavía está durmiendo, así que para resolverlo use la siguiente línea de comando:
sudo nmcli nm sleep false
esto le dice al administrador de red que se despierte. Para hacer que esto sea permanente:
cree una secuencia de comandos que /etc/pm/sleep.dcontenga lo siguiente (y no olvide marcar la secuencia de comandos como ejecutable):

#!/bin/sh

case "${1}" in
        resume|thaw)
        nmcli nm sleep false
                ;;
esac

Gracias a esto

El problema original:

Acabo de descargar Ubuntu 14.04 e instalar en mi computadora portátil: ASUS X61SL con procesador Intel P8400 Core2Duo x64.
Cuando cierro la tapa, el sistema se suspende, pero cuando vuelvo a abrir la tapa y reanudo, la red inalámbrica no está activada (la red en su conjunto está desactivada), y cuando selecciono "Activar redes" no sucede nada.
Esta es la información sobre mi adaptador inalámbrico:

$ lspci | grep -i wireless
02:00.0 Network controller: Qualcomm Atheros AR928X Wireless Network Adapter (PCI-Express) (rev 01)  

Este problema no estaba presente en Ubuntu 13.04, Linux Mint Debian Edition o Debian 7 wheezy (GNOME o KDE).

Editar: pocas pruebas con los siguientes resultados:
El problema afecta mis redes inalámbricas y cableadas.
Nota: Necesito agregar la pci=nomsilínea a grub para arrancar.
Al cerrar sesión manualmente, luego suspender, luego reanudar y luego iniciar sesión, todo funciona bien.
Cuando se suspende directamente mientras está conectado, ocurre el problema.
Bloquear y suspender causa el mismo problema que suspender directamente.
Además, este problema parece afectar la función de cierre de sesión: si elige cerrar sesión en el menú de usuario en el panel de la unidad, entonces no desea cerrar sesión, pero si usa la línea de comando gnome-session-quit --logout, puede cerrar sesión.
Ahora con lshw -C networksalida:
Normal (redes completamente funcionales):

  *-network               
       description: Ethernet interface
       product: 191 Gigabit Ethernet Adapter
       vendor: Silicon Integrated Systems [SiS]
       physical id: 4
       bus info: pci@0000:00:04.0
       logical name: eth0
       version: 02
       serial: 00:24:8c:1e:f8:53
       size: 10Mbit/s
       capacity: 100Mbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=sis190 driverversion=1.4 duplex=half latency=0 link=no multicast=yes port=MII speed=10Mbit/s
       resources: irq:19 memory:fddfcc00-fddfcc7f ioport:cc00(size=128)
  *-network
       description: Wireless interface
       product: AR928X Wireless Network Adapter (PCI-Express)
       vendor: Qualcomm Atheros
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: wlan0
       version: 01
       serial: 00:15:af:e2:13:db
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=ath9k driverversion=3.13.0-24-generic firmware=N/A ip=6.6.6.8 latency=0 link=yes multicast=yes wireless=IEEE 802.11bgn
       resources: irq:16 memory:fdff0000-fdffffff

Después de reanudar ("/etc/pm/config.d" no contiene "unload_modules"):

 *-network DISABLED      
       description: Ethernet interface
       product: 191 Gigabit Ethernet Adapter
       vendor: Silicon Integrated Systems [SiS]
       physical id: 4
       bus info: pci@0000:00:04.0
       logical name: eth0
       version: 02
       serial: 00:24:8c:1e:f8:53
       size: 10Mbit/s
       capacity: 100Mbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=sis190 driverversion=1.4 duplex=half latency=0 link=no multicast=yes port=MII speed=10Mbit/s
       resources: irq:19 memory:fddfcc00-fddfcc7f ioport:cc00(size=128)
  *-network DISABLED
       description: Wireless interface
       product: AR928X Wireless Network Adapter (PCI-Express)
       vendor: Qualcomm Atheros
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: wlan0
       version: 01
       serial: 00:15:af:e2:13:db
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=ath9k driverversion=3.13.0-24-generic firmware=N/A latency=0 link=no multicast=yes wireless=IEEE 802.11bgn
       resources: irq:16 memory:fdff0000-fdffffff

Cuando agregué el archivo unload_modules al directorio "/etc/pm/config.d" como se sugiere aquí , después de cerrar sesión, suspender, reanudar y luego iniciar sesión, la red funciona pero no puedo conectarme a mi red inalámbrica.
Nuevamente, el resultado de lshw -C network After resume ("/etc/pm/config.d" contiene "unload_modules"):

 *-network DISABLED      
       description: Ethernet interface
       product: 191 Gigabit Ethernet Adapter
       vendor: Silicon Integrated Systems [SiS]
       physical id: 4
       bus info: pci@0000:00:04.0
       logical name: eth0
       version: 02
       serial: 00:24:8c:1e:f8:53
       size: 10Mbit/s
       capacity: 100Mbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=sis190 driverversion=1.4 duplex=half latency=0 link=no multicast=yes port=MII speed=10Mbit/s
       resources: irq:19 memory:fddfcc00-fddfcc7f ioport:cc00(size=128)
  *-network DISABLED
       description: Wireless interface
       product: AR928X Wireless Network Adapter (PCI-Express)
       vendor: Qualcomm Atheros
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: wlan0
       version: 01
       serial: 00:15:af:e2:13:db
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=ath9k driverversion=3.13.0-24-generic firmware=N/A latency=0 link=no multicast=yes wireless=IEEE 802.11bgn
       resources: irq:16 memory:fdff0000-fdffffff

El contenido de 'unload_modules "donde:

SUSPEND_MODULES="$SUSPEND_MODULES ath9k"
SUSPEND_MODULES="$SUSPEND_MODULES sis190"

Donde 'ath9k' es mi módulo inalámbrico y 'sis190' es mi módulo Ethernet.

Ossama Nasser
fuente
Me desconecté en lugar de estar dormido en mi estado, ¿cómo puedo resolver el problema con eso? Thx
Luigi
11
Si resuelve su propio problema, debe publicar una respuesta, no incluir la respuesta en su pregunta.
Duncan Jones
3
¿Todavía no hay una solución oficial para este problema? Según la lectura del informe de errores no. Pero esto es muy sorprendente, ya que parece afectar a muchas personas ...
Augustin Riedinger
55
El comando se nmcli nmqueja:Object 'nm' is unknown
Alireza
1
@umpirsky trynmcli general status
rsht

Respuestas:

27

Las respuestas anteriores no me funcionaron en 14.10. Después de un poco de prueba y error, terminé con esto,

#!/bin/sh

case "${1}" in
  resume|thaw)
    nmcli r wifi off && nmcli r wifi on ;;
esac

Ponga esto en /etc/pm/sleep.d/10_resume_wifi
Hacerlo ejecutable sudo chmod 755 /etc/pm/sleep.d/10_resume_wifi y el problema debe solucionarse de inmediato.

Owais Lone
fuente
1
esto me lo resolvió el 15.04
STW
¿Por qué no "apagado" antes de ir a dormir?
Petr Gladkikh
2
¿Para qué sirve la 'r'? Me sale "Error: el objeto 'r' es desconocido". Esto parece funcionar para mí: "nmcli nm wifi activado"; (ubuntu 14.04 - laptop de precisión Dell)
FizxMike
1
Trabajó para mí 16.04
timkofu
@FizxMike respecifica el objeto 'radio' en mi versión de nmcli(Ubuntu 16.04). Cuando escribo nmcli r --help, veo que los objetivos disponibles de un comando son COMMAND := { all | wifi | wwan }y los comandos disponibles son [ on | off]. Supongo que antes de Ubuntu 14.10, no era posible apuntar a objetos individuales controlados por NetworkManager.
MDMower
21

Tengo una solución, pero es solo para reiniciar su administrador de red.

sudo service network-manager restart

No es la solución permanente.

hmjha
fuente
Esta solución es la única que funcionó para mí en 15.10 con Intel Wireless 7260
Anton Matosov
Esta solución también se trabajó en 14.04 LTS y 14.10
hmjha
Trabajó. @hmjha ¿Quizás podamos escribir un script /etc/pm/sleep.dque compruebe si el wifi funciona y se reinicia network-managersi no?
umpirsky
@umpirsky sí, podemos hacer desde ese método también. Gracias
hmjha
2
Me funcionó en Ubuntu 16.10. Sin embargo, aparentemente /etc/pm/sleep.d ya no se usa. Lo puse en su lugar en / lib / systemd / system-sleep, como: #! / Bin / sh case $ 1 en la publicación) service network-manager restart ;; esac
Marc Rochkind
4

El guión que finalmente funcionó para mí:

$ cat /etc/pm/sleep.d/10_resume_wifi 
#!/bin/sh

case "${1}" in
  resume|thaw) nmcli nm sleep false ;;
esac

$ ll /etc/pm/sleep.d/10_resume_wifi
-rwxr-xr-x 1 root root 70 mars  31 09:09 /etc/pm/sleep.d/10_resume_wifi

La otra respuesta tiene errores tipográficos (se pueden solucionar, lo sé), pero de todos modos nunca me han funcionado.

Augustin Riedinger
fuente
¿Puedo probar esto de alguna manera sin hacerlo permanente? ¿Qué hacen los comandos?
Tokio
Tokam, vea mi comentario anterior en la publicación de Owais sobre "nmcli nm wifi on" trabajando en el script primero. Básicamente, al colocar un script en el directorio sleep.d, se ejecutará a la hora de reanudar y se pasará 'resume' o 'thaw'. La secuencia de comandos comprueba si los argumentos se pasan a la secuencia de comandos y ejecuta el comando nmcli (Interfaz de línea de comandos de Network Manager). El comando específico que mencioné es equivalente a hacer clic en el administrador de red en la barra de estado y marcar "Activar WiFi". Para la verificación, ingrese "nmcli nm help" en la terminal. Además, debe asegurarse de que el script sea ejecutable.
FizxMike
Esto funciona para mí en mint mate 18, que se basa en ubuntu 16.04.1.
Eric Wang
0

Esto funcionó para mí en Ubuntu 14.04 en la computadora portátil Dell Precision.

En una terminal ingrese:

sudo nano /etc/pm/sleep.d/10_resume_wifi

Luego pegue (ctrl + v):

#!/bin/sh
case "${1}" in
resume|thaw)
    nmcli nm wifi on
    ;;
esac

Luego haga que el script sea ejecutable:

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

¡Prueba suspender y despertar para ver el wifi activado!

FizxMike
fuente
-3

¿Has intentado hacer que otro script como este ingrese en kate:

#/bin/sh

    case ![1] in
        ./bin/sh
        network="true"
        nmcli nm -c sleep=false -network
    endasc

y guárdelo como archivo jsin7 en / etc / network, y llámelo network.d y esto podría funcionar bien.

Miguel
fuente
1
Creo que la sintaxis ha cambiado recientemente, emití nmcli nm sleep falseseguido de nm wifi onpara que se ejecute. +1 por la propina!
Mahmoud Al-Qudsi
El comando sudo nmcli nm sleep falsefunciona para mí, así que no estoy atascado. Pero el /etc/network/network.dscript no se reanuda automáticamente. Si trato de ejecutarlo, me sale Syntax error: newline unexpected (expecting ")"). ¿Podría ser más específico en el 1. ¿Por qué no funciona? 2. ¿Qué se supone que debe hacer el script (para que podamos arreglarlo individualmente)? 3. ¿Por qué network.d? ¡Gracias!
Augustin Riedinger
3
¿Qué se supone que debe hacer esto? ¿Qué es ![$]? ¿Por qué ./bin/sh? Estás dentro /etc/network, no habrá ./bin/shallí. ¿Qué es un jsin7archivo? Las declaraciones de casos terminan con esac, no easc. También necesitan una variable y una condición.
terdon