报警阈值需匹配硬件与场景,CrystalDiskInfo须逐盘设置温度警告/临界值,Linux需脚本轮询/sys/class/thermal/并处理毫摄氏度,CPU阈值应低于Tjmax留缓冲,NVMe与SATA硬盘SMART字段不同不可混用。

报警阈值不是越低越好,也不是越高越安全——它必须匹配硬件特性、散热条件和使用场景。盲目设成 60℃ 或 80℃,可能天天误报,也可能真过热了还毫无反应。
CrystalDiskInfo 怎么给每块硬盘单独设温度报警
CrystalDiskInfo 的 TemperatureDlg 对话框支持按盘设置,但默认不显式区分多盘——你得手动点每块盘左侧的温度圆块才能进对应设置。常见错误是只调了一块盘,其他盘仍卡在默认 50℃,结果备份时某块老机械盘已到 58℃ 却没报警。
- 鼠标悬停并点击某块硬盘左侧的圆形温度显示区,弹出该盘专属设置窗口
- 「警告」下拉菜单里选
45℃(笔记本+持续读写)、50℃(台式机常规使用)、55℃(企业级 SAS 盘短期高负载) - 「临界」建议比「警告」高
5℃,且不要超过该盘 SMART 中194 Temperature的历史最高值 +3℃ - 改完必须点
应用,否则重启后还原
Linux 下用 lm-sensors + 脚本触发报警的硬性条件
单纯跑 sensors 命令看到温度数字没用,真正能报警得靠脚本轮询 + 条件判断。但很多人忽略两个关键点:传感器路径不稳定、温度单位不统一。
-
/sys/class/thermal/thermal_zone0/temp是 CPU 温度,但有些主板映射到thermal_zone1,需先用ls /sys/class/thermal/确认真实路径 - 该文件返回的是毫摄氏度(如
72345表示 72.345℃),直接跟85比会永远不触发 - 推荐写法:
if [ $(cat /sys/class/thermal/thermal_zone0/temp) -gt 85000 ]; then ... fi - 别用
sleep 1频繁轮询,每5秒查一次足够;太密反而抬高 CPU 负载影响温度读数
CPU 报警阈值为什么不能照搬厂商标称 Tjmax
Intel 官方文档写的 Tjmax 是 100℃,AMD 是 95℃,但这只是“不立即关机”的极限,不是“可以长期运行”的参考值。实测中,CPU 在 85℃ 以上持续运行,睿频会逐步锁频,风扇噪音飙升,焊点老化加速。
- 日常办公/浏览:报警设
75℃,留出缓冲余量 - 渲染/编译等长时高负载:设
80℃,配合UXTU动态压 TDP 防突温 - 笔记本合盖备份场景:必须设
70℃,因为散热通道被物理遮挡,温度爬升快且滞后 - BIOS 里设的
CPU Temperature Alarm和系统软件报警要错开 5℃,避免重复告警干扰判断
最常被跳过的细节:硬盘报警看的是 SMART 的 194 Temperature 字段,但 NVMe 盘走的是 0x03 字段(通过 smartctl -a /dev/nvme0n1 查),字段含义不同,阈值不能混用。











