Llevo cuatro equipos probados, dos con placa Asus (un AMD64 y un Core2Duo), un portátil Acer Travelmate 8000 y un AMD Sempron 2800+ con placa Asrok. En todos los equipos, una vez configurado el sistema funciona tanto la hibernación como la suspensión tardando ademas muy pocos segundos en “resucitar”.
Lo primero que debemos hacer es instalar las pm-utils mediante pacman y algunas otras herramientas que nos ayudaran a utilizar estas características de forma mas cómoda:
# sudo pacman -S pm-utils gnome-power-manager hal dbus acpid
pm-utils: son scripts que se encargaran de suspender y resucitar al equipo, tiene muchísimas posibilidades de configuración mediante hooks en los archivos correspondientes (para tocar dispositivos si estos no se despiertan correctamente, cosa que a mi de momento no me ha pasado).
gnome-power-manager: Nos ofrecerá opciones de apagado, suspensión e hibernación en el escritorio gnome.
acpid: daemon que se encargara de monitorizar estos scripts y nos dará la posibilidad de realizar dichas acciones al cerrar la tapa del portátil, oprimir el botón power etc…
Configurando:
Una vez instaladas nuestras dependencias debemos indicarle al kernel donde se encuentra la partición swap para suspender a disco (el método mas sencillo y efectivo). Así que nos abrimos /boot/grub/menu.lst y editamos la linea que arranca nuestro kernel añadiéndole el path que apunta a nuestra swap:Donde /dev/sda2 es nuestra partición swap. Añadiremos acpid a los daemons en el rc.conf:# (0) Arch Linux title Arch Linux root (hd0,0) kernel /vmlinuz26 root=/dev/sda3 resume=/dev/sda2 ro vga=0
DAEMONS=(syslog-ng acpid cpufreq dhcdbd networkmanager @alsa @crond … )Debemos también verificar que nuestro usuario se encuentra en el grupo “power”.
#sudo gpasswd -a usuario powerY ahora si, reiniciamos el equipo para el kernel “sepa” donde debe guardar la sesión antes de suspender / hibernar. Una vez que el equipo se encuentre a nuestra disposición después de haber reiniciado podremos suspenderlo mediante terminal, para comprobar si esta configuración es valida para nuestro PC:
#sudo pm-suspendComo veis los scripts necesitan permisos de administración para ejecutarse, si tenemos instalado “sudo” y queremos mayor comodidad podremos decirle que no nos pida la clave para estos dos scripts, abrimos /etc/sudoers y añadimos dos lineas a nuestra configuración:
#sudo pm-hibernate
Esto hará que aunque debamos ejecutar con sudo estos scrips no se nos pida la contraseña de administración…username ALL = (ALL) NOPASSWD: /usr/sbin/pm-hibernate username ALL = (ALL) NOPASSWD: /usr/sbin/pm-suspend
Si el equipo hiberna y resucita de manera correcta lo tenemos todo hecho… Al lanzar gnome-power-manager al inicio de sesión este nos suministrara la opción de hibernar o suspender en el menú de apagado del pc y teóricamente, si funciona desde terminal debería funcionar desde gnome.
Es posible que en el proceso de resucitado el equipo se quede medio colgado, esto me ha pasado en el Core2Duo y por suerte he podido solucionarlo. Si fuera nuestro caso es posible que la imagen de nuestro kernel no disponga del hook “resume”, pero se lo podemos agregar fácilmente editando el archivo /etc/mkinitcpio.conf y agregándole el hook en la linea de configuración:
Guardamos el archivo y a continuación le mandamos la orden para que vuelva a generar la imagen con el “resume” activado:HOOKS="base udev autodetect ide scsi sata resume filesystems"
sudo mkinitcpio -p kernel26En mi caso no he tenido que hacer nada mas para activar la suspensión, pero es posible que alguno de los dispositivos no despierte correctamente, al no haber sido mi caso no puedo ofreceros mi experiencia en ese sentido pero leyendo el wiki no parece demasiado difícil:
Hola, estoy siguiendo todos los pasos que pones arriba y cuando por consola uso: pm-hibernate, lo que hace el pc es apagarse.
ResponderEliminarAlguna idea de como solucionar esto??? agradezco cualquier información.