我的桌面有一个讨厌的习惯。当我有多个高强度应用程序正在运行并且我的CPU在一段时间内处于最大使用状态时,核心温度会升高并且计算机会自动关闭。
有没有一种方法可以在后台监视(编写脚本)我的CPU温度并在其达到一定温度时发出某种警告?
我正在使用dwm作为窗口管理器运行Opensuse。我通常sensors
用来查看我的CPU温度。
我的桌面有一个讨厌的习惯。当我有多个高强度应用程序正在运行并且我的CPU在一段时间内处于最大使用状态时,核心温度会升高并且计算机会自动关闭。
有没有一种方法可以在后台监视(编写脚本)我的CPU温度并在其达到一定温度时发出某种警告?
我正在使用dwm作为窗口管理器运行Opensuse。我通常sensors
用来查看我的CPU温度。
Answers:
您可以编写脚本以在dwm的状态栏中显示温度,例如:
temp (){
awk '{print $4"°C"}' <(acpi -t)
echo $temp
}
xsetroot -name "$(temp)"
您的sensors
输出可能会更复杂,具体取决于您的设置:这可以在我的一台机器上运行:
awk '/temp1/ {print +$2"°C"}' <(sensors)
如果使用statuscolours打补丁,则当$temp
击中更高的值时,还可以使输出更改颜色...
Arch Wiki对设置基本状态栏脚本进行了介绍,并且dwm站点包括.xinitrc示例。
您可以查看我的dwm-status
脚本以获取更多详细信息:http : //beta.intuxication.org/jasonwryan/archer/file/tip/Scripts/dwm-status
我有完全相同的问题,我使用的是“ cpufreqtools”(或只是“ cpufreq”-不记得了!)包。
它给您两个命令:cpufreq-info和cpufreq-set
cpufreq-info列出当前的CPU速度以及最低和最高速度。以及可用的步骤。
cpufreq-set对您更有用,因为您可以限制CPU达到的最大速度。
我的容易过热的CPU的可用速度为800MHz,1.60GHz和1.80GHz。所以,我要做的就是将其限制为1.60GHz,如下所示:
cpufreq-set-最大1.60Ghz
奇迹般有效!
如果您的Linux技能更高级,您甚至可以将其放在启动脚本中,以便始终在Linux启动后立即执行。
祝好运。
我创建了一个脚本来直接解决此类过热问题。根据所需温度限制CPU。它会在后台自动运行,如下所示:
sudo ./temp_throttle.sh 80
该命令将使CPU内核达到80摄氏度时变慢。当温度下降时,将允许CPU内核再次运行得更快。您可以在此处找到temp_throttle。
capabilities(7)
手册页所示)。