É possível ativar automaticamente a partir da suspensão?

8

Aqui está o meu problema:

Eu tenho um laptop executando o Arch e continuo em casa. Ele tem uma boa bateria de 4 horas, mas às vezes minha filha está brincando perto de onde é guardada e acaba puxando o plugue. Bem, quando chego em casa 5 horas depois, meu laptop teve um desligamento difícil.

Além disso, às vezes vou deixá-lo suspenso e esquecê-lo por um dia ou mais - o mesmo problema.

Aqui está a minha proposta:

Então, meu pensamento era que eu poderia fazer um trabalho cron que fosse executado a cada 15 ou 30 minutos ou algo assim, verificando a duração da bateria. Se a duração da bateria for <N minutos restantes, eu poderia hibernar o laptop. Isso funcionaria bem se meu laptop estivesse no modo normal 'ligado'. Mas se eu estou suspenso, nem tanto. Portanto, minha pergunta é dupla - existe uma maneira melhor de fazer isso e, se não, é possível fazer algum tipo de monitoramento no modo de suspensão - basicamente apenas execute esse trabalho cron?

Aqui está o que funcionou:

Seguindo as instruções uswsusp no wiki do Arch, instalei o uswsusp no AUR . Usando o seguinte comando:

wayne@jughead:~$ swapon -s
Filename                Type        Size    Used    Priority
/dev/sda2                               partition   530140  56744   -1

Eu descobri que /dev/sda2era o nome da minha partição de troca. Então eu coloquei isso no meu/etc/suspend.conf

snapshot device = /dev/snapshot
resume device = /dev/sda2

Adicionei uresume no meu mkinitcpio.conf aqui:

HOOKS="base udev autodetect pata scsi sata resume uresume filesystems usbinput fsck"

Eu criei /etc/pm/config.d/modulee coloquei

SLEEP_MODULE=uswsusp

iniciar.

Como meu laptop não foi reconhecido ( # s2ram --testexibido Machine unknown), tive que usar a --forceopção.

Em /usr/lib/pm-utils/module.d/uswsuspI também mudou todas as s2ramopções para s2both.

Wayne Werner
fonte
5
Você sabe rtcwake? Essa resposta pode ser inspiradora.
sr_ 21/09/12
2
Veja também askubuntu.com/questions/12383/…
derobert,
Excelentes soluções, se o s2both não funcionar!
Wayne Werner

Respostas:

7

Parece que você quer suspender a suspensão de ambos / híbrido, que deve executar todas as etapas da hibernação, incluindo a gravação de RAM no disco, mas na verdade não desligar a máquina; em vez disso, entrará no S3 (espera). Se você acordar a máquina antes que a bateria acabe, será bastante rápido; se a bateria acabar, será como se você a tivesse hibernado.

derobert
fonte
Isso parece altamente promissor - vou verificar isso hoje à noite!
Wayne Werner
Funciona perfeitamente! Eu configurei e puxei a bateria e minha sessão voltou a ficar online.
Wayne Werner