Duas opções
A primeira opção (listada em segundo) é revisar journalctl
possíveis mensagens de erro relacionadas à hibernação. Se a primeira opção não produzir resultados, a segunda opção é criar um script de wrapper que substitua pm-hibernate
por `hibernate.
Criar script Wrapper
Criar um script de wrapper permite hibernate
substituir pm-hibernate
.
Os comandos Localizar diretórios estão localizados em
Antes de criar o script do wrapper, você precisa saber em quais diretórios os comandos hibernate
e pm-hibernate
residem. Use estes dois comandos:
$ locate bin/hibernate
/mnt/c/Program Files (x86)/CyberPower PowerPanel Business Edition/bin/hibernate.dll
$ locate bin/pm-hibernate
/mnt/clone/usr/sbin/pm-hibernate
/mnt/old/usr/sbin/pm-hibernate
/usr/sbin/pm-hibernate
O script do wrapper que você deseja criar será /usr/sbin/pm-hibernate
. Como não tenho o hibernate
pacote instalado, a primeira pesquisa encontra apenas um utilitário do Windows. De acordo com a lista de arquivos do pacote , ele deve ser revelado /usr/sbin/hibernate
junto com alguns outros arquivos.
Arquivo original de backup
Primeiro, queremos fazer uma cópia de backup on-line do arquivo original:
sudo cp -a /usr/sbin/pm-hibernate /usr/sbin/pm-hibernate.bak
Em seguida, exclua o arquivo original:
sudo rm -f /usr/sbin/pm-hibernate
Criar script de wrapper
Nota: em vez de um muitos acham script wrapper que seja mais fácil para criar um link simbólico para pm-hibernate
a hibernate
: Como criar um soft ou link simbólico?
Eu gosto de usar gedit
para editar, mas você pode substituí-lo por nano
ou pelo vim
editor que preferir:
sudo -H gedit /usr/sbin/pm-hibernate
Um arquivo vazio aparecerá. Cole nas seguintes linhas
#!/bin/bash
# Wrapper script to replace pm-hibernate with hibernate package
/usr/sbin/hibernate "$@"
Converter script de wrapper em executável
Atualmente, o script do wrapper é um arquivo regular. Precisamos convertê-lo em um objeto executável:
sudo chmod a+x /usr/sbin/pm-hibernate
Agora temos um script de wrapper operacional, portanto, toda vez que pm-hibernate
é chamado de hibernate
execução. Conforme mencionado na parte superior, porém, você deve revisar journalctl
primeiro (descrito a seguir) antes de criar um script de wrapper.
Reveja journalctl
Você pode grep
enviar as mensagens de hibernação journalctl
para possíveis problemas.
Eu não uso o hibernate, mas uso o suspend. O comando a seguir me permite ver todas as mensagens pertencentes às suspend
quais você substituiria hibernate
:
$ journalctl -b | grep -i suspend
Oct 09 22:26:33 alien eyesome[21740]: Lid Open/Close: Wait 3 seconds to see if suspending
Oct 09 22:26:48 alien systemd[1]: Starting TLP suspend/resume...
Oct 09 22:26:48 alien systemd[1]: Started TLP suspend/resume.
Oct 09 22:26:48 alien systemd[1]: Starting Suspend...
Oct 09 22:26:48 alien systemd-sleep[22938]: /lib/systemd/system-sleep/sound: Going to suspend...
Oct 09 22:26:48 alien eyesome[22952]: Wakeup: Going to suspend. Creating: /tmp/eyesome-is-suspending
Oct 09 22:26:49 alien systemd-sleep[22938]: Suspending system...
Oct 10 04:26:38 alien kernel: PM: Suspending system (mem)
Oct 10 04:26:38 alien kernel: Suspending console(s) (use no_console_suspend to debug)
Oct 10 04:26:38 alien kernel: PM: suspend of devices complete after 1142.044 msecs
Oct 10 04:26:38 alien kernel: PM: late suspend of devices complete after 19.766 msecs
Oct 10 04:26:38 alien kernel: PM: noirq suspend of devices complete after 61.505 msecs
Oct 10 04:26:38 alien kernel: Suspended for 21583.011 seconds
Oct 10 04:26:38 alien eyesome[23137]: Lid Open/Close: Wait 3 seconds to see if suspending
Oct 10 04:26:38 alien systemd-sleep[22938]: /lib/systemd/system-sleep/sound: Waking up from suspend...
Oct 10 04:26:38 alien eyesome[23168]: Wakeup: Called from suspend.
Oct 10 04:26:41 alien systemd[1]: Started Suspend.
Oct 10 04:26:41 alien systemd[1]: Stopping TLP suspend/resume...
Oct 10 04:26:41 alien systemd[1]: Reached target Suspend.
Oct 10 04:26:41 alien systemd[1]: suspend.target: Unit is bound to inactive unit systemd-suspend.service. Stopping, too.
Oct 10 04:26:41 alien systemd[1]: Stopped target Suspend.
Oct 10 04:26:42 alien systemd[1]: Stopped TLP suspend/resume.
Oct 10 04:26:52 alien eyesome[24459]: Daemon: Removed file: /tmp/eyesome-is-suspending
Oct 10 05:47:09 alien eyesome[12434]: Lid Open/Close: Wait 3 seconds to see if suspending
Oct 10 05:51:43 alien systemd[1]: Starting TLP suspend/resume...
Oct 10 05:51:44 alien systemd[1]: Started TLP suspend/resume.
Oct 10 05:51:44 alien systemd[1]: Starting Suspend...
Oct 10 05:51:44 alien systemd-sleep[28353]: /lib/systemd/system-sleep/sound: Going to suspend...
Oct 10 05:51:44 alien eyesome[28367]: Wakeup: Suspending. Creating /tmp/eyesome-is-suspending
Oct 10 05:51:45 alien systemd-sleep[28353]: Suspending system...
Oct 10 16:30:59 alien kernel: PM: Suspending system (mem)
Oct 10 16:30:59 alien kernel: Suspending console(s) (use no_console_suspend to debug)
Oct 10 16:30:59 alien kernel: PM: suspend of devices complete after 623.519 msecs
Oct 10 16:30:59 alien kernel: PM: late suspend of devices complete after 19.654 msecs
Oct 10 16:30:59 alien kernel: PM: noirq suspend of devices complete after 61.549 msecs
Oct 10 16:30:59 alien kernel: Suspended for 38348.943 seconds
Oct 10 16:30:59 alien eyesome[28563]: Lid Open/Close: Wait 3 seconds to see if suspending
Oct 10 16:30:59 alien systemd-sleep[28353]: /lib/systemd/system-sleep/sound: Waking up from suspend...
Oct 10 16:30:59 alien eyesome[28599]: Wakeup: Called from suspend.
Oct 10 16:31:02 alien systemd[1]: Started Suspend.
Oct 10 16:31:02 alien systemd[1]: Stopping TLP suspend/resume...
Oct 10 16:31:02 alien systemd[1]: Reached target Suspend.
Oct 10 16:31:02 alien systemd[1]: suspend.target: Unit is bound to inactive unit systemd-suspend.service. Stopping, too.
Oct 10 16:31:02 alien systemd[1]: Stopped target Suspend.
Oct 10 16:31:03 alien systemd[1]: Stopped TLP suspend/resume.
Oct 10 16:31:13 alien eyesome[30020]: Daemon: Removed file: /tmp/eyesome-is-suspending