Hibernar amb SwSusp

Una de les caracteristiques que he trobat a faltar en el meu portatil des de que va sortir HaseXP ha estat la impossibilitat de poder hibernar el meu sistema (el Linux clar !).

Quan parlo d’hibernar em refereixo a fer un volcat de la RAM en disc i apagar el PC, de tal forma que en la pròxima arrencada, es carregarà el kernel i aquest restaurarà la RAM des del disc i tornarem a tenir el sistema tal i com el teniem just avans de la hibernació.

Aixo clar és una caracteristica pròpia del kernel, que no existeix en les versions oficials (espero que aviat si perque es una característica al·lucinant) i per tant necessitarem aplicar-li un pegat(traducció de parche).

Els nois que han fet el pegat han estat els de Software Suspend i a més una petita aplicació per enviar el kernel a hibernar.

Us explicaré com ho he fet jo:

He utilitzat la última versió estable del kernel de kernel.org la 2.4.22 i la versió del pegat de SwSusp swsusp-2.0-rc1 que podeu trobar a la pagina de Software Suspend. Existeixen també pegats per versions anteriors a la 2.4.22 i per a les 2.5 (aquestes ultimes en desenvolupament).

Un cop baixades les fonts i descomprimides a /usr/src/linux i el pegat a /usr/src (aquest descomprimit amb “bzip2 -d”) he aplicat el pegat (“patch -p1 < ../swsusp-2.0-rc1-whole"). En la configuració del kernel us teniu que assegurar que activeu les ocpions següents: Code Maturity
++ * Prompt for development and/or incomplete code/drivers
General Setup
++ * Power Management support
++ * Software Suspend
++ * Compile in debugging output — Missatges d’error
++ Compress image — Per HD petits
++ Allow Keep Image Mode
++ * Relaxed /proc/swsusp permissions –Permetre usuaris no root hibernar

A mes de les opcions per defecte del vostre maquinari.

Un cop compilat el kernel i instal·lat en el vostre gestor d’arrancada (Grub/lilo) cal configurar el gestor per tal que pugui resumir la hibernació en l’arrencada. Aixo s’aconsegueix passant-li al kernel resume=/dev/hda3 (on /dev/hda3 és la vostra partició swap on es volca la RAM) per resumir en cas que tinguem alguna imatge o bé resume=/dev/hda3 noresume per cancel·lar el resum de la hibernació. El meu /etc/lilo.conf ha quedat aixi:

default=Linux-RESUM

image=/vmlinuz
label=Linux-RESUM
read-only
append=”resume=/dev/hda3″
image=/vmlinuz
label=Linux-NORMAL
read-only
append=”resume=/dev/hda3 noresume”

D’aquesta manera puc triar com vull arrencar.

Finalment només falta instal·lar l’script per a poder hibernar. Es pot baixar de Software Suspend, jo he usat la versió 0.15-rc1. Un cop tenim l’script el podem instalar amb “suspend.sh –install”.

A partir d’ara ja podrem hibernar el nostre preciós Linux via software (amb la comanda “hibernate”), ja que existeixen algunes BIOS com les del Ibook (si no crec recordar malament) que ho fan elles mateixes.

Mes informació:
Arxius per baixar.
HOWTO d’on he tret tot això.

Espero que us serveixi tant com a mi.
Autor: llpamies

This entry was posted in Linux. Bookmark the permalink.

5 Responses to Hibernar amb SwSusp

  1. jBilbo says:

    Et felicito per l’article, es molt interessant. Quan tingui un moment ho probaré en el meu portàtil… potser ja no em farà falta l’escript halt ;-D

    Jonathan Hernández
    Linux User #280862 :: http://counter.li.org/
    GnuPG key ID: 348EAC17 :: pgp.escomposlinux.org

  2. llpamies says:

    De moment tot el proces no es massa rapid (mes rapid que iniciar normal si !) pero espero que mica en mica es vaigi millorant (no vol Alan Cox posar-ho en el seu kernel ? 😉 )

  3. mengor says:

    Mola molt això, i encara que no tingui un portatil potser també ho instalo per evitar els temps infinits d’arrencada del meu pc de “sobretaula”. Aquesta funció ja vaig veure que estava incluida per defecte en els test del kernel 2.6, igual que la cryptoapi (que faig servir per guardar les meves fotos i documents compromesos :P).

    Bon article 🙂

  4. jBilbo says:

    igual que la cryptoapi (que faig servir per guardar les meves fotos i documents compromesos :P)

    Ejem… un articlet d’això? 😉

    Jonathan Hernández
    Linux User #280862 :: http://counter.li.org/
    GnuPG key ID: 348EAC17 :: pgp.escomposlinux.org

  5. mengor says:

    pos demà el faig! 🙂

Leave a Reply