Macbook tarda 20 segundos en despertarse

Macbook tarda 20 segundos en despertarse

Kubuntu 20.04 en Macbook Air se suspende bien pero tarda demasiado en activarse cada vez, unos 20 segundos.

Parece ser un caso de suspensión/suspensión normal, no de hibernación, dado que systemctl suspenddesencadena el mismo comportamiento.

corriendo eso, despertando y luego corriendo

journalctl -b --since "1min ago"

yo obtengoeste(en Pastebin). allí no se menciona ninguna hibernación.

En cuanto a memoria y swap, creo que hay suficiente RAM:

~$ free -h
               total        used        free      shared  buff/cache   available
Mem:           3,8Gi       703Mi       1,7Gi       162Mi       1,4Gi       2,7Gi
Swap:          2,0Gi       440Mi       1,6Gi

Respuesta1

Respuesta corta:

En 22.04:

echo deep | sudo tee -a /sys/power/mem_sleep

Si lo anterior no funciona en 22.04 o si esto sucede en 22.10, 23.04 o posterior:

echo s2idle | sudo tee -a /sys/power/mem_sleep

La solución puede dejar de funcionar después de las actualizaciones del kernel e incluso después de reiniciar, por lo quese puede ejecutar un script con el comando necesario al reiniciar.

La primera parte es un poco contradictoria, porque deepsiempre debería desencadenar el despertar largo y s2idleel corto, como se dijo.aquí. Probablemente había algo con errores en mi 22.04, donde al menos aparentemente a veces ocurría lo contrario.


Respuesta larga:

Muy poco después de haber publicado esta pregunta, me topé con una solución que parecía funcionar: en ubuntuforumsaquí, con más consejos en respuesta a eso,aquí.

Realmente no entiendo cómo funcionó esto, podría haber un error involucrado. Esa publicación dice que la solución es cambiar /sys/power/mem_sleepde s2idlea deep. Eso no me quedó claro porque al buscar ese archivo contenía esta única línea:

s2idle [deep]

Lo que significa quedeep ya fue seleccionado(!!) — sin mencionar que, como se dijo anteriormente, era de esperar el comportamiento opuesto. —

He entendido lo que hace el comando después de preguntar al respecto.aquí.

Como se indica en los comentarios iniciales de ubuntuforums, no he intentado cambiar ese archivo como tal, pero he usado el comando (basado también en el segundo comentario):

echo deep | sudo tee -a /sys/power/mem_sleep

Sin embargo, mirando de nuevo ese archivo, parecía sin cambios. Incluso después del reinicio estaba quieto s2idle [deep], pero en ese momento elel despertar de la suspensión fue instantáneo! (Lo cual, hasta donde yo sé en retrospectiva, fue, como dije, lo contrario de lo que se esperaba: ¡ deepdebería significar un largo despertar!)

Parece que el archivo no fue modificado por ese comando, peroalgofue cambiado - relacionado con ese archivo o no.

Cambiando eso [s2idle] deepcon un comando correspondiente echo s2idle | sudo tee -a /sys/power/mem_sleep(para investigar esto un poco, como se discutió en los comentarios relacionados con la pregunta vinculada), el problema de despertar de 20 segundos de duración nonoreaparecer.

Tal vez estuvo en juego algún error que no puedo rastrear.

Después de algunas actualizaciones del kernel, el problema inicial volvió a aparecer y se solucionó de la misma manera. (De hecho, el archivo /sys/power/mem_sleepya estaba en la forma en que se supone que activa el comando, pero este último es necesario de todos modos).


Actualización (24 de octubre de 2022):

Después de una nueva actualización, la solución anterior ya no funcionó, pero sí la solución opuesta: echo s2idle | sudo tee -a /sys/power/mem_sleep, lo que equivale a hacer lo mismocontrarioa lo que mis fuentes me impulsaron a hacer.

Eso me pareció extraño en ese momento, pero ahora entiendo que, de hecho, este era el comportamiento esperado desde el principio: lo que sucedió antes fue extraño y tenía errores, y la nueva actualización lo había solucionado; s2idleSe supone que debe demostrar el rápido despertar.

Después de actualizar a la versión 22.10 "normal", el problema pareció solucionado por un tiempo, mientras que el archivo /sys/power/mem_sleepparecía restablecido a deep. Pero el problema del retardo de activación de 20 segundos volvió a aparecer y se solucionó como se dijo anteriormente en la Actualización 2. Se confirmó nuevamente después de una instalación limpia de Kubuntu 22.10: después de tolerar el problema durante un mes (solo para ver si se podía solucionar). de lo contrario), el primer comando no ayudó, el segundo sí (febrero de 2023).


Debido a que este problema continúa (por ejemplo, en 23.04, y reaparece con bastante frecuencia entre actualizaciones), he configurado un procedimiento más rápido para ejecutar ese comando desde el Lanzador de aplicaciones creando un archivo de script fix_suspendcon el formato:

#!/bin/sh
echo s2idle | sudo tee -a /sys/power/mem_sleep

y un archivo ~/.local/share/applications/Fix suspend.desktopque contiene la línea (adaptado para Plasma):

Exec=pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY KDE_SESSION_VERSION=5 KDE_FULL_SESSION=true /path/to/fix_suspend

Después de un tiempo, la solución dejó de funcionar después del reinicio, por lo que tuve que ejecutar el script al reiniciar como se indica en la respuesta breve al principio.

información relacionada