我正在运行双启动的 Windows 10 和 Ubuntu 18.04(使用来自此关联)。一切正常,但风扇不停地开着、关着。CPU 温度在 39 - 42 摄氏度之间。我认为风扇在这个范围内的某个地方被激活,然后冷却 CPU,从而再次收到信号以停止风扇等。在 Windows 上,风扇在空闲或轻度工作时完全关闭。
我已经做了什么
lm_sensors:即使执行“sudo sensor-detect”后仍找不到风扇
i8kutils:找不到 /prod/i8k
BIOS 已更新至版本 1.5.0
内核版本为 4.19.2-041902-generic
安装并激活 thermald、tlp、powertop 和 intel-microcode。
将显卡设置为 Intel 以节省电量
- “sudo prime-select 英特尔”
核心和 CPU 电压降低 -140 mV,iGPU 电压降低 -40 mV(使用此关联)
安装 smbios-utils 并将其设置为不同的模式(平衡、冷底、安静、性能)
禁用风扇 BIOS 控制(参见关联)
一切都毫无进展。
我还想做什么
- 复贴
统计资料
sudo tlp stat
+++ System Info
System = Dell Inc. XPS 15 9570
BIOS = 1.5.0
Release = Ubuntu 18.04.1 LTS
Kernel = 4.19.2-041902-generic #201811132032 SMP Tue Nov 13 20:34:19 UTC 2018 x86_64
/proc/cmdline = BOOT_IMAGE=/boot/vmlinuz-4.19.2-041902-generic root=UUID=5394fef0-92d3-4753-a6a1-fd7b5c4f9cea ro quiet splash quiet acpi_rev_override=1 acpi_osi=Linux scsi_mod.use_blk_mq=1 nouveau.modeset=0 nouveau.runpm=0 mem_sleep_default=deep vt.handoff=1
Init system = systemd v237
Boot mode = UEFI
+++ Temperatures
CPU temp = 43 [°C]
Fan speed = (not available)
我猜 Ubuntu 无法看到风扇,因此无法控制它们。有什么建议可以控制它们吗?
答案1
我找到了解决我自己的问题的方法。
看到粉丝们lm_sensors
添加dell-smm-hwmon
到模块:
sudo su
echo "options dell-smm-hwmon restricted=0 force=1" > /etc/modprobe.d/dell-smm-hwmon.conf
echo "dell-smm-hwmon" >> /etc/modules # check manually before
exit
sudo update-initramfs -u
重新启动,风扇应该可见:
sensors
dell_smm-virtual-0
Adapter: Virtual device
fan1: 0 RPM
fan2: 0 RPM
控制你的粉丝
然后关注本指南安装i8kutils
:
sudo apt install i8kutils
sudo su
echo "i8k" >> /etc/modules # check manually before
echo "options i8k force=1" > /etc/modprobe.d/i8k.conf
exit
重启:
sudo modprobe i8k force=1
配置i8kutils
:
sudo -H gedit /etc/i8kmon.conf
最后,使用以下命令禁用 Dell BIOS 风扇控制该程序由 TomFreudenberg 编写让i8kutils
接管。
git clone https://github.com/TomFreudenberg/dell-bios-fan-control.git
cd dell-bios-fan-control
make
sudo dell-bios-fan-control 0
只需i8kmon
启动服务并控制您的风扇即可。您也可以禁用i8kmon
以尝试ik8fan
手动控制风扇(不建议这样做,因为您可能会关闭风扇,并且它们永远不会启动,从而危及您的 CPU 和 GPU!)。
i8kfan 2 2
答案2
获得较低温度(因此不需要风扇)的一种侵入性较小的方法是使用 powertop。
cat /sys/bus/pci/devices/0000\:01\:00.0/power/control # (on?. That is bad)
sudo powertop --auto-tune
cat /sys/bus/pci/devices/0000\:01\:00.0/power/control # (auto?. That is good)
为了永久获取更改,请参阅如何使 Powertop 更改永久生效?。但是,在 TLP 帮助中,有人说“尝试在每次启动时应用 powertop 的 --auto-tune 设置将与 TLP 冲突”。到目前为止,它对我来说运行良好(XPS 15 9570,bios 1.5)。
答案3
我的 Dell 9570(Intel i7-8750H)在 Linux Mint 19.1 和 Windows 10 上运行。
- BIOS 版本:1.10.1
- 内核:4.18.0-21
在 Mint 上,仅使用 Phobya NanoGreace Extreme 重新涂抹 CPU/GPU 后,我在“CPU 温度指示器”软件监控上获得了 42° C @Idle **。它为我带来了大约 -7° C @Idle 的增益,在满载 CPU 时,增益甚至更大。
添加 Powertop Intel 软件(可在软件管理器中使用)后,我的系统上仅获得 34° C @Idle**,平均温度接近 38° C。
官方网站 :https://01.org/powertop/
首先,我已经为我的系统校准了 Powertop(校准过程需要几分钟,在此期间计算机可能会部分不可用),之后我执行了它。
sudo powertop --calibrate
sudo powertop --auto-tune
查看 powertop 的手册:https://www.systutorials.com/docs/linux/man/8-powertop/
为了在系统启动时启用 Powertop,我制作了一个 cron 函数文件/etc/cron.d命名动力顶具有执行权限,包含此功能:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
@reboot root powertop --auto-tune
不要同时使用TLP,否则会引起冲突。
在 Windows 上重新粘贴后,最低温度为 38° C @Idle**,平均而言,我更接近 42° C(使用 Intel Extreme Tuning Utility 软件),Dell Power Manager 根据需要校准为优化(标准)或静音。在我看来,Dell Power Manager 用这个值校准了 bios,这让我很满意。优化模式似乎是 Linux 的最佳设置。
我还实现了一些硬件优化:打开通风口(位于风扇中心的机壳下方),在 CPU/GPU 热管上添加两个导热垫(3 x 1 厘米/17 W/mK),一个在左上方,一个在风扇前面的右上方。
我不喜欢降低我的 CPU 电压,因为 Linux 似乎不能很好地处理这个问题。
通过这一切,我在 Linux 上获得了大约 -15° C @Idle**。我的笔记本电脑变得非常安静,我终于对它完全满意了。
** 最佳得分
答案4
仅供参考,在浪费了一些时间之后,下面的方法对我有用:
sudo apt-get install ipmitool # install
sudo ipmitool sdr type fan # check fan speed
sudo ipmitool raw 0x30 0x30 0x01 0x00 # disable automatic control
sudo ipmitool raw 0x30 0x30 0x02 0xff 0x00 # set fan speed to 0x00
不确定是否相关,但也禁用了 idrac - 在启动时按 ctrl+e 并禁用那里的服务。(如果您不使用服务器,则可以放心地忽略这一点)