我在 MSI Prestige 14 A10SC 笔记本电脑上运行 18.04 LTS。我已修改/etc/systemd/logind.conf
设置 HandleLidSwitch 以忽略。我合上盖子,将笔记本电脑放在家里的其他地方。然后我远程 ssh 进入笔记本电脑并开始执行繁重的编译工作,但由于 CPU 上限为 400MHz,因此运行速度非常非常慢。
(ms) jesse@msi14:~$ grep MHz /proc/cpuinfo
cpu MHz : 400.218
cpu MHz : 400.170
cpu MHz : 400.204
cpu MHz : 400.265
cpu MHz : 400.018
cpu MHz : 400.054
cpu MHz : 399.942
cpu MHz : 400.028
cpu MHz : 400.293
cpu MHz : 399.559
cpu MHz : 400.043
cpu MHz : 400.320
但是如果我把盖子打开,它现在每个 CPU 都会变成 2000+,并且编译现在提前完成了。
我怎样才能改变系统来真正忽略盖子事件并将笔记本电脑真正视为服务器?
答案1
看起来 MSI 已经做得很好了,阻止了我们在 LID 关闭时获得最大性能。
尝试后:
- 禁用 thermald。
- 禁用 acpi(这应该可以完全阻止 LID 按钮工作)。
- 禁用 intel_pstates 模块并改用 acpi-cpufreq。
- 安装 Windows 并确认其行为相同。
我想说的是,这个问题与 Linux 无关,也许是 ucode 或 UEFI 上的任何东西导致了这个问题。
由于在盖子关闭时获得最大性能对我来说是强制性的要求,因此我决定执行硬件破解以永久禁用 LID 传感器。(也许这可以通过软件来完成,使用 BIOS,但我认为这比拆焊更危险)
MSI 这样设计这款产品是有原因的,但我真的不在乎。我已经计划在正在使用的垂直支架上添加一些额外的外部风扇,所以我应该可以接受这个温度。
请注意,我所做的操作会使您的保修失效,并且需要一定的电子知识。如果您决定这样做,我不会对您可能造成的任何损害承担任何责任。
首先我必须拆开笔记本电脑(非常小心,因为主板 PCB 非常容易损坏)。
然后我取下右上角的 SOT 封装 IC 标签 U42(霍尔传感器),并将未连接到 GND 的焊盘连接在一起
编辑:可以进行更简单的硬修改以获得相同的结果,即移除屏幕左下角的磁铁。
磁铁位于 LCD 屏幕那一角的塑料下方。塑料是用胶水粘住的,但用指甲(最好不要使用其他东西)应该可以将其取下(不需要全部取下,只需取下那个角),然后用小针取出磁铁。