我以前用的是 21.04,它有休眠功能,可以通过扩大这显然与 22.04 上的新 GNOME 不再兼容。
显然扩展站点上没有其他选择。除了在终端中输入命令之外,您知道还有什么其他方法吗?
答案1
有一个扩大这将显示您的休眠按钮。这并不一定意味着它会起作用。因此必须采取以下几个步骤:
检查休眠是否有效:打开终端并执行
systemctl hibernate
。如果这不起作用,你必须查看Ubuntu 手册如何定义交换分区/文件以 root 身份进入终端(sudo 不起作用)。使用以下命令打开(或创建)一个文件:
nano /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla
在文件末尾添加以下文本:
##NEW entry since Ubuntu 18:
[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
##NEW entry since Ubuntu 18:
[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.handle-hibernate-key;org.freedesktop.login1;org.freedesktop.login1.hibernate-multiple-sessions;org.freedesktop.login1.hibernate-ignore-inhibit
ResultActive=yes
- 清理钩子(错误 - 从休眠状态恢复后记录失败)。该错误发生在恢复后(Ubuntu 真的不希望您休眠):
sudo nano /etc/systemd/system/use-10_grub_common.service
进入:
[Unit]
Description=Execute the /etc/pm/sleep.d/10_grub_common script after hibernation.
After=hibernate.target
[Service]
Type=oneshot
ExecStart=/etc/pm/sleep.d/10_grub-common thaw
[Install]
WantedBy=hibernate.target
此脚本将从 grub 中删除错误标志,以防止下次启动时显示错误。由于它是一项服务,因此您需要启用它:
sudo systemctl enable use-10_grub_common
我没有涉及的是交换的定义(分区或文件) - 请参阅第 1 点的链接。有两个地方必须定义“Resume”:Grub:Resume=UUID=xxxx(当您有一个交换分区并且 xxx 是它的 uid 时)和/etc/initramfs-tools/conf.d/resume
(Resume=UUID=xxxx)中的条目
由于我不知道您的配置,并且从未尝试过使用交换文件进行休眠,所以我现在不会详细说明
答案2
我按照这个教程操作,它在 22.04 上完美运行:https://ubuntuhandbook.org/index.php/2021/08/enable-hibernate-ubuntu-21-10/
做就是了:
sudo gedit /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
并插入以下行:
[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;org.freedesktop.login1.handle-hibernate-key;org.freedesktop.login1;org.freedesktop.login1.hibernate-multiple-sessions;org.freedesktop.login1.hibernate-ignore-inhibit
ResultActive=yes
然后安装 Hibernate 按钮扩展: https://extensions.gnome.org/extension/755/hibernate-status-button/
答案3
如果你在 ubuntu 23.10 上使用该扩展,请执行
sudo apt install polkitd-pkla