
OpenBMC传感器不显示问题排查1. 先定位数据消失的位置传感器从硬件到页面通常经过硬件 → 内核驱动 → hwmon → Sensor 服务 → D-Bus → Redfish → WebUI“页面没有传感器”可能发生在其中任意一层。首先判断它是完全没有创建还是已有对象但读数无效。2. 检查内核接口和 Sensor 服务查看 hwmon 设备名称for dev in /sys/class/hwmon/hwmon*; do [ -d $dev ] || continue printf %s: $dev cat $dev/name done找到目标设备后读取对应通道cat /sys/class/hwmon/hwmonN/temp1_input若 hwmon 不存在检查设备实例化、驱动匹配和内核日志若读取失败则先确认供电、总线访问和主机电源条件。查看 Sensor 服务systemctl list-units --all --typeservice *sensor* journalctl -u sensor-service -b --no-pager不同方案可能使用dbus-sensors或phosphor-hwmon配置入口需要与实际服务对应。3. 检查配置和 D-Bus 对象使用 entity-manager 的平台可以检查busctl tree xyz.openbmc_project.EntityManager重点确认配置是否成功匹配以及Type、总线、地址、通道和名称是否符合对应 Sensor 服务要求。查询所有传感器对象busctl call \ xyz.openbmc_project.ObjectMapper \ /xyz/openbmc_project/object_mapper \ xyz.openbmc_project.ObjectMapper \ GetSubTreePaths sias \ /xyz/openbmc_project/sensors 0 \ 1 xyz.openbmc_project.Sensor.Value对象存在后继续检查Value、Unit、可用状态和 Association。存在对象但值为无效数据通常需要回到采样过程检查。4. 检查 Redfish 与页面通过 Redfish 查询实际机箱下的传感器集合并继续访问成员资源。判断方式如下结果重点排查hwmon 不存在硬件描述、驱动和设备实例化hwmon 正常D-Bus 无对象配置匹配和 Sensor 服务D-Bus 正常Redfish 无资源关联关系及 bmcweb 映射Redfish 正常页面不显示前端过滤、字段解析及版本匹配部分传感器仅在主机上电后有效。应结合电源状态判断避免把正常的不可用状态误认为适配失败。