Povolení hibernace na Linuxu: Porovnání verzí

Z ZděchovNET
Skočit na navigaci Skočit na vyhledávání
Bez shrnutí editace
Bez shrnutí editace
 
(Není zobrazena jedna mezilehlá verze od stejného uživatele.)
Řádek 1: Řádek 1:
==Ubuntu 24.04==
Povolení hibernace pro Ubuntu 22.04 se swap souborem:

Jako u [[#Ubuntu 22.04]] a dále:

* Pro zobrazení menu hibernace vložit text do souboru:
<source lang="bash">sudo mcedit /etc/polkit-1/rules.d/10-enable-hibernate.rules</source>
<pre>
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.login1.hibernate" ||
action.id == "org.freedesktop.login1.hibernate-multiple-sessions" ||
action.id == "org.freedesktop.upower.hibernate" ||
action.id == "org.freedesktop.login1.handle-hibernate-key" ||
action.id == "org.freedesktop.login1.hibernate-ignore-inhibit")
{
return polkit.Result.YES;
}
});
</pre>

==Ubuntu 22.04==

Povolení hibernace se swap souborem:


* Make your /swapfile have at least the size of your RAM
* Make your /swapfile have at least the size of your RAM
Řádek 58: Řádek 79:
<source lang="bash">sudo pm-hibernate</source>
<source lang="bash">sudo pm-hibernate</source>


=Troubleshooting=

Check why systemctl hibernate doesn't work:
<source lang="bash">systemctl status systemd-hibernate.service</source>


=See also=
[https://askubuntu.com/a/1132154 Původní návod na stackoverflow]
* [https://askubuntu.com/a/1132154 Původní návod na stackoverflow]
* [https://feriman.com/enable-hibernate-on-ubuntu-2404-easily-step-by-step-instructions/ Enable Hibernate on Ubuntu 24.04 Easily: Step-by-Step Instructions]


[[Kategorie:Linux]]
[[Kategorie:Linux]]

Aktuální verze z 12. 10. 2024, 06:59

Ubuntu 24.04

Jako u #Ubuntu 22.04 a dále:

  • Pro zobrazení menu hibernace vložit text do souboru:
sudo mcedit /etc/polkit-1/rules.d/10-enable-hibernate.rules
polkit.addRule(function(action, subject) {
    if (action.id == "org.freedesktop.login1.hibernate" ||
        action.id == "org.freedesktop.login1.hibernate-multiple-sessions" ||
        action.id == "org.freedesktop.upower.hibernate" ||
        action.id == "org.freedesktop.login1.handle-hibernate-key" ||
        action.id == "org.freedesktop.login1.hibernate-ignore-inhibit")
    {
        return polkit.Result.YES;
    }
});

Ubuntu 22.04

Povolení hibernace se swap souborem:

  • Make your /swapfile have at least the size of your RAM
sudo swapoff /swapfile
sudo dd if=/dev/zero of=/swapfile bs=$(cat /proc/meminfo | grep MemTotal | grep -oh '[0-9]*') count=1024 conv=notrunc
sudo mkswap /swapfile
sudo swapon /swapfile

Note the UUID of the partition containing your /swapfile:

sudo findmnt -no SOURCE,UUID -T /swapfile
/dev/nvme0n1p5 20562a02-cfa6-42e0-bb9f-5e936ea763d0
  • Get the resume offset of your /swapfile:
    • Run sudo filefrag -v /swapfile
    • In the "physical_offset" column, copy the first row number (without dots). Value example: 34816.
  • Configure Grub to resume from the swapfile by editing /etc/default/grub and modify the following line:
GRUB_CMDLINE_LINUX_DEFAULT="resume=UUID=20562a02-cfa6-42e0-bb9f-5e936ea763d0 resume_offset=34816 quiet splash"
  • Update Grub:
sudo update-grub
  • Create the following /etc/initramfs-tools/conf.d/resume:
RESUME=UUID=20562a02-cfa6-42e0-bb9e-5e936ea763d0 resume_offset=34816
# Resume from /swapfile
  • Update initramfs:
sudo update-initramfs -u -k all
  • K povolení volby hibernace v menu upravte soubor:
sudo mcedit /var/lib/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla

Přidat následující obsah:

[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate
ResultActive=yes

Now you can hibernate with:

  • From power off menu
  • From command line:
sudo systemctl hibernate
  • From command line:
sudo pm-hibernate

Troubleshooting

Check why systemctl hibernate doesn't work:

systemctl status systemd-hibernate.service

See also