You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 24.04下如何自定义Linux sensors3输出并排查配置问题

Ubuntu 24.04下如何自定义Linux sensors3输出并排查配置问题

嘿,我太懂你这种想把lm_sensors输出捋得整整齐齐的需求了——默认的设备名、乱序的传感器看着实在闹心,尤其是你还有10G网卡和多块SCSI磁盘要打理。我结合经验给你拆解下怎么搞定自定义配置,还有排查问题的方法。

先搞懂配置文件的优先级(避免瞎改)

Ubuntu 24.04里的lm_sensors是按这个顺序加载配置的:

  • 优先读取/etc/sensors.d/目录下所有.conf后缀的文件
  • 最后才会读取全局的/etc/sensors3.conf

所以强烈建议你只在sensors.d里放自定义配置,单独建个文件比如my-custom-sensors.conf,这样既不会污染默认配置,出问题了直接删文件就能恢复,方便排查。

排查当前配置失效的核心步骤

你之前改了全局配置又加了sensors.d文件,先按这几步排查:

  1. 先拿到设备的原始ID(最关键!)
    运行sensors -u,这个命令会输出完全未格式化的原始硬件ID和传感器参数——比如你要改的10G网卡、SCSI磁盘,对应的原始ID可能是nct6798-isa-0290、i2c-0-50这种格式,所有自定义配置都必须绑定到这个ID上,猜ID肯定会失效。
  2. 检查配置文件是否被正确加载
    运行sensors -v,这个命令会输出所有加载的配置文件列表,以及详细的加载日志。如果你的自定义文件没出现在列表里,要么是文件名不对(必须是.conf后缀),要么是权限有问题(文件要设为root所有,权限644)。
  3. 排查语法错误
    把你的配置文件路径传给sensors测试:sensors -c /etc/sensors.d/my-custom-sensors.conf -v,如果有语法错误(比如引号漏了、指令写错、括号不匹配),日志里会直接报错。
  4. 用最小配置验证
    先写个极简的配置,比如只重命名一个设备,排除复杂配置的干扰:
    chip "你从sensors -u里拿到的10G网卡ID"
      name "我的10G网卡"
      label temp1 "网卡芯片温度"
    
    然后运行sensors看这个设备的名称和标签有没有变,只要这个生效了,再逐步添加其他配置。

实现你想要的效果的具体操作

1. 重命名设备和传感器

  • 重命名整个设备(就是sensors输出里的大标题):用name指令
  • 重命名单个传感器(比如某个温度、电压):用label指令
    示例:
# 针对10G网卡的配置
chip "10G网卡的原始ID"
  name "10G 网络扩展卡"
  label temp1 "网卡核心温度"
  label fan1 "网卡散热风扇"

# 针对SCSI磁盘的配置(注意:如果磁盘温度是通过hddtemp获取的,要先装hddtemp并启用)
chip "磁盘的原始ID"
  name "磁盘托架1"
  label temp1 "托架1磁盘温度"

2. 调整设备输出顺序

lm_sensors默认按设备识别顺序输出,要自定义顺序的话,得先ignore所有默认设备,然后按你想要的顺序逐个配置:

# 先忽略所有默认识别的设备,这样就不会显示默认的乱序设备了
ignore *

# 按你想要的顺序依次配置每个设备
# 第一个:CPU传感器
chip "CPU的原始ID"
  name "CPU 区域"
  label temp1 "核心1温度"
  label temp2 "核心2温度"

# 第二个:主板传感器
chip "主板的原始ID"
  name "主板监控"
  label temp3 "主板南桥温度"

# 第三个到第八个:6块SCSI磁盘,按托架顺序来
chip "磁盘托架1的ID"
  name "磁盘托架1"
  label temp1 "磁盘温度"

chip "磁盘托架2的ID"
  name "磁盘托架2"
  label temp1 "磁盘温度"

# 最后:10G网卡
chip "10G网卡的ID"
  name "10G 网络扩展卡"
  label temp1 "网卡核心温度"

这样sensors就会严格按你写的顺序输出设备了。

3. 处理SCSI磁盘的注意点

如果你的SCSI磁盘温度不是lm_sensors直接识别的,可能需要先装hddtemp,然后在配置里让sensors加载hddtemp的传感器。装完hddtemp后,运行sensors -u就能看到磁盘的ID了,然后按上面的方法配置就行。

常见踩坑点

  • 原始ID必须完全匹配:不能自己瞎编ID,必须和sensors -u输出的一模一样,包括大小写、连字符这些细节。
  • 不要同时改sensors3.conf和sensors.d的文件:两个文件的配置会叠加,容易冲突,建议只保留sensors.d里的自定义配置。
  • hddtemp的问题:有些磁盘的温度需要hddtemp支持,Ubuntu 24.04里可以用apt install hddtemp安装,然后启动服务systemctl start hddtemp,再用sensors -u看能不能识别到磁盘。

备注:内容来源于stack exchange,提问作者Journeyman Geek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 13:53:05