前言
博客基于 Hexo 平台,而 Hexo 发布到 pages 上面需要使用 Git。为了使用 Git 方便且在学校也能水文章,我在我的戴尔灵越 7590 笔记本上安装了 Win10 + Ubuntu 20.04 双系统,并将论坛源文件从家中的 NAS 移动到笔记本的 SSD 中。
好不容易把系统配置好,能支撑日用了,不过我很快就遇到了睡死的问题 —— 合盖后再打开经常会卡死在黑屏状态下,屏幕左上角有一白色光标。键盘操作、切换 tty、敲击键盘均无反应,只能长按电源键强行关机再重启。
基本信息
参数 | 值 |
---|---|
CPU | Intel Core i7-9750H |
芯片组 | Intel HM370 |
内存 | 2 * 8GB DDR4-2666 SO-DIMM,镁光 D9VPP 颗粒 |
GPU | Intel UHD630 & NVIDIA GeForce GTX 1650 (4GB 128bit 8Gbps GDDR5) |
SSD | 西数 SN750 500G (Win10) & 西数 SN550 250G (Ubuntu) |
无线网卡 | Intel 9560AC CNVi |
屏幕 | 15.6" 1920x1080 VA,72% NTSC |
系统 | Windows 10 20H2 & Ubuntu 20.04 (5.8 内核) |
解决过程
考虑独显问题
众所周知 N 卡在 Linux 下没有好用的开源驱动,系统自动帮我安装好了 450 版本的闭源驱动并配置好了双显卡切换。同时,老黄的 Linux 驱动也有各种毛病,于是尝试升级到最新 460 驱动,无解;在驱动控制面板中屏蔽独显,无解。因此暂时排除独显问题。
考虑 Connected Standby 问题
戴尔在近几年的机型中引入并默认启用了微软主推的 Connected Standby (S0ix) 睡眠模式,而 S0ix 模式的问题很多,它所能提供的始终连接特性无法正常实现,且无法让电脑完全进入睡眠,导致电脑温度高、电量快速消耗,实际表现反而不如传统的 S3 睡眠;也给 Linux、黑苹果等第三方系统带来了电源管理问题。联想在其机型的 BIOS 里提供了禁用 S0ix 的选项,而戴尔没有提供,只能手动改为 S3 睡眠。
根据灵越 7590 机型的 ArchWiki 条目,解决方法是在内核参数中增加 acpi_rev_override=1 acpi_osi=Linux mem_sleep_default=deep
。开机进入 GRUB,选中 Ubuntu 启动项,按 E 编辑启动项,在 linux
所在行的 quiet splash
前加上这三个参数,按 F10 键引导系统。进入系统使用一段时间后合上屏幕,静置几分钟后打开,机器正常唤醒。反复测试几次后问题未复现。
保存参数
上面通过在 GRUB 中 E 键编辑内核参数的方法只在此次启动生效,而为了每次启动系统都应用该修复,需要将这些参数都保存到 GRUB 配置文件中成为默认值。下面介绍保存这些参数的方法:
使用文本编辑器打开
/etc/default/grub
,这里我使用的是nano
:找到
GRUB_CMDLINE_LINUX_DEFAULT
一行,在quiet splash
前增加条目acpi_rev_override=1 acpi_osi=Linux mem_sleep_default=deep
。然后保存该文件。例如在nano
下则是 Ctrl+O,按回车确认保存,再按 Ctrl+X 离开编辑器。更新 GRUB 配置文件:
这样无论是以后升级内核,还是手动执行
update-grub
,每次开机默认都会带上那三个参数。
本操作应该也适用于戴尔其他启用了 S0ix 的机型。
$ EOF.