无法使用 nvidia 专有驱动程序暂停

无法使用 nvidia 专有驱动程序暂停

我正在使用 Ubuntu 16.04 LTS 和 nvidia-340。

启用 nvidia 驱动程序后,我无法从挂起状态恢复。

当我切换到英特尔驱动程序或者使用新型驱动程序时,我可以从挂起状态恢复。

我尝试更新内核但并没有解决问题。

有没有什么办法可以用 nvidia 专有驱动程序解决这个问题?

如果不是,那么使用新型驱动程序而不是专有的 nvidia 会损失很多性能吗?

答案1

pm-utils可通过( ) 包自定义 Suspend/Hibernate/Resume,为您的显卡添加特殊处理utilities and scripts for power management。阅读、、、、、man的页面,并阅读 中的文件。pm-actionpm-powersavepm-is-supportedpm-suspend-hybridpm-hibernatepm-suspend/usr/share/doc/pm-utils/

答案2

通过使用最新的 nvidia-driver-495,我可以重置启动参数。一切恢复正常...


更新

添加以下启动参数(到GRUB_CMDLINE_LINUX_DEFAULT)对我来说很有帮助:

acpi_osi=! acpi_osi="Windows 2009"

[ /etc/default/grub 中的双引号"需要用反斜杠进行转义]\

感谢https://github.com/Bumblebee-Project/Bumblebee/issues/764#issuecomment-594328434(虽然我没有使用大黄蜂..)

系统由以下部分组成:

  • NVIDIA 公司 GP107M [GeForce GTX 1050 Ti 移动版] / NVIDIA GeForce GTX 1050 Ti/PCIe/SSE2
  • 运行 Ubuntu 20.04.3
  • 使用 nvidia-driver-470

解决方法(不再工作......)对我来说是通过命令行暂停(因此不使用顶栏“暂停”也不关闭盖子 - 或者据我所知来自 pm-suspend 的钩子):

systemctrl suspend

尚未尝试(复制)来自 nvidia 论坛的解决方案:

https://forums.developer.nvidia.com/t/problem-with-resume-from-suspend-ubuntu-16-04-gt-940mx/51410/172

简短回答,发生了什么- 在恢复过程中 Linux (+systemd) 忘记打开监视器。因此解决问题只需打开监视器即可。

简短解决方案(快速测试它是否对您有帮助) Ctrl+Alt+F1,您会看到登录提示,以普通用户身份登录(非 root)并执行(一行命令):

chvt 7 ; sleep 3; xrandr --display :0.0 --auto

长解决方案 安装 360 驱动程序并安装所有nvidia-*.service& 安装/usr/bin/nvidia_sleep.sh 安装 470 驱动程序(文件夹中不包含此 systemd 服务/usr/share/doc/nvidia-*)。编辑/usr/bin/nvidia_sleep.sh 并在 chvt 命令后的恢复部分中,在您的 xserver 用户下添加:

sleep 3; xrandr --display :0.0 --auto

还需要添加 root(也可以是其他)作为 XServer 用户,因此在工作的 XSession 下,您需要允许 root 执行 xrandr:编辑 /etc/X11/xinit/xinitrc 并添加:

xhost +localhost

或者

xhost +root@localhost

检查是否有效:

sudo su -l xrandr

应该管用。

相关内容