恢复后屏幕空白 - Dell M5510 Ubuntu 16.04

恢复后屏幕空白 - Dell M5510 Ubuntu 16.04

无法从暂停状态恢复

笔记本电脑是戴尔 M5510 Precision

暂停/恢复功能在 Windows 10 和 Ubuntu Live CD/USB 映像下有效。它甚至在安装后的前几天都有效。然后(没有运行任何更新或重新启动),我暂停了系统,但恢复失败了。我得到了一个空白屏幕。它正在运行:我可以从另一个系统 ssh 进入。

我尝试了网上的许多方法,但重新安装时我丢失了第一组笔记。我最初使用的是 Ubuntu Mint,然后重新安装到 vanilla Ubuntu。全新安装后,挂起/恢复运行了 2 天,效果很好。第二天,我恢复了笔记本电脑并开始工作。中午时分,我将其挂起,结果出现了黑屏问题。中间我没有运行任何升级命令或进行任何重启,所以我不知道那里发生了什么变化。

00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 06)
01:00.0 3D controller: NVIDIA Corporation GM107GLM [Quadro M1000M](rev a2)
Linux 4.4.0-36-generic

我尝试过的事情:

  • 创建了 24GB 未加密交换空间
  • 编辑/etc/systemd/logind.conf并取消注释HandleLidSwitchDocked=suspend 763085
  • 将内核升级至 4.4.8(同时破坏了网络)761820
  • 将内核更新至 4.6.0(这没有帮助,并且还破坏了 docker)启动板错误
  • 从开源驱动程序切换到 Nvidia 361.42
  • 我看到一些关于在 BIOS 中禁用独立显卡的帖子,但在我的 BIOS 中找不到该选项。
  • 有些答案建议按 ctrl-alt-f[12] 进入文本控制台,然后按 ctrl-alt-f7。当屏幕空白时,此操作不执行任何操作。
  • 尝试了 Fn+F8 屏幕切换(在内部/外部显示之间切换)以及所有亮度键。archlinux 错误

运行 nvidia x 服务器设置并将 gpu 更改为 Intel 而不是 nvidia。

答案1

最终,人们在 9 月 18 日发布的戴尔社区论坛。这最终是一个 BIOS 问题:在挂起期间,英特尔寄存器被重置为全 0。内核补丁解决方法已经在开发中,但可能要到 4.9 版才会包含。但是,寄存器可以在挂起期间保存到文件中,并在恢复期间加载。

将以下脚本保存为 /lib/systemd/system-sleep/fixbacklight (和 chmod 755)

#!/bin/sh
# From patchwork.freedesktop.org/.../
# and en.community.dell.com/.../19985320
# Suspend Resume fails to restore PWM_GRANUALITY
# Based on script by [email protected]

INTEL_REG=/usr/bin/intel_reg
ADDR="0x000c2000"
SAVE_FILE=/var/lib/systemd/save_intel_reg_pwm_granuality

[ -x "$INTEL_REG" ] || exit 0

case "$1" in
    pre)
        echo "$0: Saving Intel Register PWM_GRANUALITY"
        "$INTEL_REG" read "$ADDR" \
            | (read addr value && echo "$value") \
            >"$SAVE_FILE"
    sync
    ;;
    post)
        value=`cat "$SAVE_FILE" 2>/dev/null`
        if [ -n "$value" ]
        then
            echo "$0: Restoring Intel Register PWM_GRANUALITY $value"
            "$INTEL_REG" write "$ADDR" "$value"
            rm "$SAVE_FILE"
        fi
    ;;
esac

是@nloewen 指引了我走上正确的道路。

答案2

我也遇到过同样的问题。结果发现,将内核更新到 Ubuntu 16.04.3 中推荐的最新内核可以解决这个问题(在尝试了大量替代“解决方案”之后)。

要进行此更新,请运行 sudo apt install --install-recommends linux-image-generic-hwe-16.04 xserver-xorg-hwe-16.04

当前时刻,安装内核 4.10。(答案中也建议进行此内核更新https://askubuntu.com/a/823523/647310

答案3

我希望我能像你一样记下详细的笔记。答案的一半来自记忆,另一半来自 LibreOffice Calc 电子表格,该电子表格运行一长串终端命令/bash 脚本并记录屏幕输出和配置文件片段。

所采取的行动

创建了 24GB 未加密交换空间“。除非你冬眠。当您有大量驱动器空间时进行交换也没有什么坏处。

编辑/etc/systemd/logind.conf并取消注释HandleLidSwitchDocked=suspend“。 这停靠此选项仅适用于您的机器插入扩展坞或您的HDMI连接到电视或外接显示器。变量HandleLidSwitch对大多数人来说更重要。默认情况下,此行被注释掉,但注释掉后会做什么?我的系统做了一些奇怪的事情,比如在应该暂停时进入休眠状态、暂停两次或根本不暂停,只是关闭屏幕。我建议将选项设置为您真正想要它做的事情,即suspendignore

将内核升级至 4.4.8(同时破坏了网络)“。4.4.8已经旧了,不应使用。

将内核更新至 4.6.0(这没有帮助,并且还破坏了 docker)4.6.0与其他的一起被弃用4.6.x链。4.6.3本来会更好,因为它有适用于戴尔笔记本电脑的内核更新。但是当我尝试 4.6.3 时,我遇到了如下所述的问题。

从开源驱动程序切换到 Nvidia 361.42“这是一个好主意,因为许多人报告说成功了司机过英伟达

我看到了一些关于在 BIOS 中禁用独立显卡的帖子,但在我的 BIOS 中找不到该选项独立显卡意味着主板上的独立芯片,而不是集成显卡. 本质上禁用独立显卡意味着关闭Nvidia GPU,你已经在韓國已经关闭了。另一种关闭方法是blacklist使用司机M100M芯片(您说过您已经完成了)。

建议措施

更新内核4.7.3它改进了 CPU 调平和负载系数,减少了发热量,并更新了驱动程序。升级到 Ubuntu 16.04 后,我在 4.4 挂起/恢复方面遇到了问题。我还遇到了 Intel Turbo Boost 始终运行和系统过热的问题。我还遇到了“细字体”的问题鹦鹉螺。我更新了内核到4.6.3但随后系统出现休眠问题,而不是挂起。所以我更新到4.7.1, 然后4.7.2最后4.7.3. 除了对 Ubuntu 和 sytemd 中的暂停/恢复设置进行调整外,我在 4.7.3 下到目前为止没有遇到任何问题。

如果这不管用,我还可以分享更多东西,但我不想因为一个“文字墙“在此过程中,我开发了自己的挂起/恢复脚本(而不是 Ubuntu 或 systemd 的盖子关闭脚本)以及在挂起/恢复后将声音返回电视的脚本。

答案4

我在我的戴尔 Inspiron 15 7559 上遇到了同样的问题。它运行了几天,然后就出现了这个问题。

使固定

将你的 ubuntu 恢复到较旧的内核版本。相信我,它有效。我安装了 4 个内核版本,其中两个出现此问题,而较旧的两个没有。

重新启动并转到 grub 菜单中的高级设置。检查您拥有的不同内核版本。尝试分别启动每个版本并使用挂起功能,然后检查哪个版本的挂起功能正常工作。此外,每次启动时都要检查 nvidia 服务器设置应用程序,因为更改内核版本会禁用 nvidia(性能模式)。如果它被禁用,请检查 nvidia 模式 > 注销 > 登录 > 然后再次使用挂起来检查它是否有效。

一旦你确定了适合你的内核版本。使用删除其他较新内核版本的方法。您不会再遇到此类问题。:)

相关内容