在我之前的 Kubuntu 系统中,我可以休眠,但在 22.04 中却无法休眠。我的 grub 输出:
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="resume=UUID=4ff9741-2dc2-4f32-96e3-9b574a7f2739 resume_offset=34818 quiet splash"
GRUB_CMDLINE_LINUX=""
然后是我的 fstab 输出,特别是 swap 部分:
swap was on /dev/sda4 during installation
UUID=14ff9741-2dc2-4f32-96e3-9b574a7f2739 none swap sw 0 0
/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
[Enable hibernate to be run via cron]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultAny=yes
现在当我执行 df -h 时:
Filesystem Size Used Avail Use% Mounted on
tmpfs 785M 2.3M 783M 1% /run
/dev/sda2 24G 14G 8.5G 62% /
tmpfs 3.9G 3.6M 3.9G 1% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
/dev/sda3 211G 140G 61G 70% /home
/dev/sda1 140M 22M 118M 16% /boot/efi
tmpfs 785M 13M 773M 2% /run/user/1000
在我用 gparted 增加其大小后,sda4 下应该可以看到 17gb 的交换空间。最后,如果我这样做,会systemctl hibernate
出现此错误“无法通过 logind 休眠系统:没有足够的交换空间进行休眠”
我非常喜欢休眠选项,因为它确实可以节省大量电量并延长电池的使用寿命。我也生活在一个电力短缺很普遍的国家。
编辑 swap -s 的输出
Filename Type Size Used Priority
/dev/sda4 partition 17746940 0 -2
答案1
感谢 Pilot6,我找到了解决方案 - 我将这个解决方案保留在 Community Wiki 中,以便他能够获得认可。事实上,Fstab 和 Grub 有不同的 UUID,导致身份危机。
我通过命令找到了交换的正确名称
cat /etc/fstab
然后像这样编辑
sudo nano /etc/default/grub
:GRUB_CMDLINE_LINUX_DEFAULT="resume=UUID=14ff9741-2dc2-4f32-96e3-9b574a7f2739 quiet splash"
并更新sudo update-grub
。我编辑了:
sudo nano /etc/initramfs-tools/conf.d/resume
并RESUME=UUID=14ff9741-2dc2-4f32-96e3-9b574a7f2739
更新了它sudo update-initramfs -u
最后我在这里修改了笔记本电脑的行为sudo nano /etc/systemd/logind.conf
:通过取消注释HandleLidSwitch=hibernate
&
HandleLidSwitchExternalPower=hibernate