Estoy ejecutando Ubuntu 13.10 y logro suspender la RAM sin ningún incidente. Sin embargo, suspender en el disco (hibernación) no funciona la segunda vez que lo hago (después de reiniciar).
Traté de hibernar con pm-hibernate
y también con uswusp
.
La primera vez después de reiniciar todo va bien, pero si trato de hibernar nuevamente, se colgará con el mensaje s2disk snapshooting system
y tendré que reiniciar.
Mi partición de intercambio es más grande que mi RAM.
Mi /etc/default/grub
:
GRUB_DEFAULT="5"
GRUB_HIDDEN_TIMEOUT_QUIET="true"
GRUB_TIMEOUT="10"
GRUB_DISTRIBUTOR="`lsb_release -i -s 2> /dev/null || echo Debian`"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX="resume=UUID=6a6e6406-4022-4620-bb36-fbf29f5c1cdf"
GRUB_SAVEDEFAULT="false"
Ejecuto update-grub después de cambiar el parámetro CMDLINE_LINUX.
Mi /etc/initramfs-tools/conf.d/resume
:
RESUME=UUID=6a6e6406-4022-4620-bb36-fbf29f5c1cdf
Lo actualicé después de cambiarlo con:
sudo update-initramfs -u
Intenté "restablecer" mi intercambio con:
sudo swapoff -a && sudo swapon -U 6a6e6406-4022-4620-bb36-fbf29f5c1cdf
pero no cambió nada.
Salida de free -m
:
total used free shared buffers cached
Mem: 1865 644 1220 0 111 328
-/+ buffers/cache: 205 1659
Swap: 2044 0 2044
Salida de nombre -a:
Linux QuoraF 3.11.0-13-generic #20-Ubuntu SMP Wed Oct 23 07:38:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
¿Hay alguna forma de volver a configurar lo que está mal después de la primera hibernación? Imagino que el sistema crea algo en alguna parte, y ese algo bloquea las hibernaciones posteriores.
Respuesta aceptada:
Encontré una solución. Corriendo:
sync && sudo sysctl -w vm.drop_caches=3 && sudo sysctl -w vm.drop_caches=2
limpiaría el caché y el sistema podrá hibernar una segunda vez después de reiniciar.
No sé qué o por qué algo se estaba acumulando en la memoria. Debería ser un sistema de pila, donde las nuevas entradas arrastran las entradas que ya no se necesitan.
Los consejos de Wilf siguen siendo válidos para un sistema que usa el espacio de intercambio cuando se ejecuta. Lo estoy usando solo para hibernar Eso significa que tenía 2 GB, pero solo estaba usando 1 GB. Si necesitara 3 GB, por ejemplo, no podría hibernar mi computadora con 2 GB de RAM usando una partición de intercambio de 2 GB.