我不知道为什么,但直到最近这个命令不再起作用:
root# exec systemctl suspend
系统确实会尝试这样做suspend
,屏幕甚至会暂时关闭,但随后它会立即返回到登录提示,因此某些东西正在阻止暂停。
该系统是一个laptop
与它的lid always closed
(多年来一直如此)。因为lid is always closed
,几年前添加了以下两个条目来适应这一点:
# /etc/systemd/logind.conf
[Login]
# ===========================================================
# VIA: https://unix.stackexchange.com/a/460405/103956
# ===========================================================
HandleLidSwitch=ignore
HandleLidSwitchDocked=ignore
# ===========================================================
我只是为了完整性而提及这一点。
以下是更多信息。
朋友们有什么想法吗?先感谢您。=:)
Linux g750asus 5.13.12-100.fc33.x86_64 #1 SMP Wed Aug 18 20:12:01 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 15:54 ? 00:00:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 30
root 720 1 0 15:54 ? 00:00:00 /usr/lib/systemd/systemd-journald
root 733 1 0 15:54 ? 00:00:00 /usr/lib/systemd/systemd-udevd
systemd+ 1107 1 0 15:55 ? 00:00:00 /usr/lib/systemd/systemd-resolved
root 1111 1 0 15:55 ? 00:00:00 /usr/sbin/ModemManager
root 1112 1 0 15:55 ? 00:00:00 /usr/sbin/NetworkManager --no-daemon
root 1114 1 0 15:55 ? 00:00:00 /usr/sbin/alsactl -s -n 19 -c -E ALSA_CONFIG_PATH=/etc/alsa/alsactl.conf --initfile=/lib/alsa/init/00main rdaemon
root 1117 1 0 15:55 ? 00:00:00 /usr/libexec/bluetooth/bluetoothd
chrony 1130 1 0 15:55 ? 00:00:00 /usr/sbin/chronyd
root 1135 1 8 15:55 ? 00:00:32 /usr/sbin/rngd -f
root 1138 1 0 15:55 ? 00:00:00 /usr/sbin/rsyslogd -n
root 1139 1 0 15:55 ? 00:00:00 /usr/lib/systemd/systemd-homed
root 1141 1 0 15:55 ? 00:00:00 /usr/lib/systemd/systemd-logind
avahi 1148 1115 0 15:55 ? 00:00:00 avahi-daemon: chroot helper
dbus 1149 1 0 15:55 ? 00:00:00 /usr/bin/dbus-broker-launch --scope system --audit
dbus 1168 1149 0 15:55 ? 00:00:00 dbus-broker --log 4 --controller 9 --machine-id 7dda623a3a624e458a393c700c042270 --max-bytes 536870912 --max-fds 4096 --max-matches 131072 --audit
jdoe 1174 1 0 15:55 ? 00:00:00 /usr/lib/code-server/lib/node /usr/lib/code-server
root 1196 1 0 15:55 ? 00:00:00 /usr/sbin/gssproxy -D
root 1203 1 0 15:55 ? 00:00:00 /usr/sbin/atd -f
root 1204 1 0 15:55 ? 00:00:00 /usr/sbin/crond -n
root 1207 1 0 15:55 tty1 00:00:00 /sbin/agetty -o -p -- \u --noclear tty1 linux
jdoe 1261 1174 0 15:55 ? 00:00:00 /usr/lib/code-server/lib/node /usr/lib/code-server
jdoe 1297 1261 0 15:55 ? 00:00:00 /usr/lib/code-server/lib/node /usr/lib/code-server/lib/vscode/out/vs/server/fork
root 1315 1 0 15:55 ? 00:00:00 /usr/lib/systemd/systemd-userdbd
root 1320 1 0 15:55 ? 00:00:00 /usr/lib/systemd/systemd --user
root 1321 1320 0 15:55 ? 00:00:00 (sd-pam)
root 1329 1320 0 15:55 ? 00:00:00 /usr/bin/python3 -u /usr/bin/autojack
root 1339 1320 0 15:55 ? 00:00:00 /usr/bin/dbus-broker-launch --scope user
root 1353 1339 0 15:55 ? 00:00:00 dbus-broker --log 4 --controller 10 --machine-id 7dda623a3a624e458a393c700c042270 --max-bytes 100000000000000 --max-fds 25000000000000 --max-matches 5000000000
root 1379 1 0 15:55 ? 00:00:00 ssh-agent -s
root 1461 1459 0 15:56 ? 00:00:00 sshd: root@pts/0
root 1462 1461 0 15:56 pts/0 00:00:00 -bash
root 1519 1315 0 16:00 ? 00:00:00 systemd-userwork
root 1520 1315 0 16:00 ? 00:00:00 systemd-userwork
root 1521 1315 0 16:00 ? 00:00:00 systemd-userwork
root 1544 1462 0 16:01 pts/0 00:00:00 ps -ef
答案1
我认为这是 470 nvidia 驱动程序的问题。我在 Fedora 34 下使用 RPMFusion 驱动程序时遇到了同样的问题。卸载驱动程序可以解决问题,但效果并不理想。我尝试降级到 465 驱动程序,但它使我的笔记本电脑无法启动,甚至进入单用户模式。我暂时放弃了。
答案2
我把这个问题发布到RPMfusion bugzilla 这里。他们提醒我解决方案(几天前发布)这里。
解决方案摘要:
root# dnf -y install xorg-x11-drv-nvidia-power # The new package containing the below.
root# systemctl enable nvidia-suspend.service
root# systemctl enable nvidia-resume.service
root# systemctl enable nvidia-hibernate.service
root# reboot
笔记:这个答案总结了错误和解决方案,但我将Vic's
上面的解决方案标记为答案,因为他在后续评论中记录了该解决方案(并且值得赞扬)。