Fazendo seu Linux hibernar

Neste meu primeiro artigo quero falar de um dos recursos que eu acho mais interessantes do Windows: o hibernar. O boot é extremamente rápido, uma vez que o hibernar apenas cria um "snapshot" do sistema, o grava em arquivo e ao reiniciar apenas carrega esse para a memória. O legal é que também podemos fazer isso no Linux com a ajuda de um patch chamado Software Suspend.

[ Hits: 58.256 ]

Por: Davidson Esteves Nunes em 28/11/2005


Mãos a obra!



Após ter feito o download, aplique o patch 100-software-suspend-2.2-rc7-for-2.6.13.patch no kernel que você pegou utilizando o script "apply", que vem junto com o patch:

# cd /usr/src/linux
# /diretorio-do-download/software-suspend-2.2-rc7-for-2.6.13/apply


Edite o arquivo .config no diretório do kernel e faça as seguintes mudanças:

CONFIG_SUSPEND2=y
CONFIG_SUSPEND2_FILEWRITER=y
CONFIG_SUSPEND2_SWAPWRITER=y
CONFIG_SUSPEND2_USERSPACE_UI=y
CONFIG_CRYPTO_LZF=y

Não entrarei em detalhes sobre a compilação e instalação do kernel. Aqui mesmo no Viva o Linux você encontra ótimos artigos abordando este assunto!

Você pode utilizar o suspend de duas formas: utilizando a partição de swap ou utilizando um arquivo de imagem. Adotarei neste artigo a segunda opção, que foi a que funcionou no meu caso.

Descompacte o script hibernate e instale-o:

# tar xzvf hibernate-script-1.12.tar.gz
# cd hibernate-script-1.12
# ./install.sh


Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Mãos a obra!
   3. Configuração
   4. Testando
   5. Finalizando
Outros artigos deste autor

Compilando e testando o novo X11R6.9

Implementando a segurança em servicos de acesso remoto

Criando discos virtuais em máquinas remotas

Leitura recomendada

Instalando kernel otimizado do Ubuntu no Asus eeepc

openSUSE Linux no Windows 10 sem virtualização

Recompilando kernel 2.6 no Debian Lenny

Compilando kernel 2.6 no Slackware 11

NPTL, Exec-Shield e outros palavrões que fazem seus programas crasharem

  
Comentários
[1] Comentário enviado por lennon.jesus em 28/11/2005 - 14:58h

Cara,

Ainda não tive tempo de testar... Mas já gostei!
Espero que funcione, hehe!
Realmente é uma "mão na roda". A melhor coisa do mundo é poder começar de onde paramos sem maiores enrolações.
Parabéns!

Abraços,
Lennon Jesus

[2] Comentário enviado por humbhenri em 28/11/2005 - 20:27h

Vale lembrar que no Ubuntu 5.10 a hibernação já vem por default

[3] Comentário enviado por diegospeed em 28/11/2005 - 22:24h

Olá,

Muito interessante, vou testar aki...

Artigo muito bomm de grande valia para todos... Parabéns...

Abraço...

[4] Comentário enviado por Grobsch em 29/11/2005 - 07:57h

Cara, já havia baixado o suspend e estava pronto para testá-lo, apenas vou antes atualizar o kernel, quando me deparo com seu artigo, bem providencial. Conversava com o Bruno do BigLinux e ele sugeriu este suspend, parece que ele irá deixar como padrão no Big, e talvez eu o coloque no GoblinX, apesar de não gostar de acrescentar patches ao kernel.

Abs

[5] Comentário enviado por a.fernando em 30/11/2005 - 09:09h

Parabens,

Gostei muito do seu artigo.

O assunto é de extrema utilidade para mim que uso notebook para trabalhar.

Valeu!

[6] Comentário enviado por Grobsch em 01/12/2005 - 13:39h

Hummm... Não consegui ainda compilar para o kernel 2.6.14.3.. o erro:
In file included from kernel/power/atomic_copy.c:10:
include/asm/suspend2.h: In function `fix_processor_context':
include/asm/suspend2.h:132: error: `per_cpu__init_tss' undeclared (first use in this function)
include/asm/suspend2.h:132: error: (Each undeclared identifier is reported only once
include/asm/suspend2.h:132: error: for each function it appears in.)
include/asm/suspend2.h:138: error: `per_cpu__cpu_gdt_table' undeclared (first use in this function)
make[2]: ** [kernel/power/atomic_copy.o] Erro 1
make[1]: ** [kernel/power] Erro 2
make: ** [kernel] Erro 2

Vou tentar mais... qq ajuda será útil...

[7] Comentário enviado por Grobsch em 02/12/2005 - 10:01h

Acabei removendo a tal função e compilei, vou testar hoje.

[8] Comentário enviado por LM25TTD em 05/02/2006 - 19:40h

Alguem sabe como configurar esta função sem conflitar com o driver nvidia?

[9] Comentário enviado por cycne em 28/02/2006 - 19:44h

Muito bom o artido, amigo LM25TTD , tive o mesmo problema!

( aqui é driver nvidia 8178 e kernel 2.6.15 DEBIAN!! :P )

primeiro o hibernate nao funcionava com driver da nvidia , aí achei um patch pro driver da nvidia que resolveu o problema!, aí vem o problema n°2 , o quando a maquina voltava do hibernar e abria o grafico bonitinho , o terminal fica todo como se estivesse fora de frequencia... bom faça o seguinte...
aqui vc vai saber como patchear seu driver nvidia de acordo com a versão
http://wiki.suspend2.net/DistroAndHardwareSetup/Nvidia?highlight=%28nvidia%29

agora vc usa o hibernate com o --force que vai funcionar!

### Resolvendo o problema do console ###
baixe esse patch pro kernel:
http://dev.gentoo.org/~spock/projects/vesafb-tng/

.. inclusive ou escrever um artigo sobre , pois esse patch é muito bom , voce pode mudar a resolução do terminal em tempo real , sem prescisar rebootar , e pode por uma resolução diferente em cada um com o fbset, alem de nao prescisar mais daqueles códigos toscos no lilo ou grub: vga=792
agora vc comenta o vga=
e escolhe a sua resolução assim: append="video=vesafb:ypan,1280x1024-32"

agora vai funcionar q é uma maravilha :) , aqui o meu append= esta assim:
append="quiet resume2=file:/dev/sda1:0xb32530 video=vesafb:ypan,1280x1024-32"

espero ter ajudado!!!!
abraços!!

[10] Comentário enviado por evangelistat em 04/06/2007 - 11:19h

nunca tinha pensado na capacidade do linux hibernar . por isso achei o artigo curioso e interessante .Parabéns.
Sds.

[11] Comentário enviado por xiloba em 28/05/2011 - 22:40h

legal o post.
Estive procurando por isso e também achei as seguintes possibilidades, sem instalar nada no ubuntu 10.04:
para hibernar:
#s2disk
para suspender:
# echo -n > /sys/power/state
:)


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts