问题描述
在.sr中删除相关传感器
但是网页上仍有信息框保留
如何完整地隐藏掉某个传感器
环境信息
- 操作系统:Ubuntu 24.04
- 软件版本:version:25.12.00.01
答案内容由AI生成,仅供参考:
若要完整隐藏某个传感器:
推荐将
SensorType配置为"Invalid Sensor Type"若需彻底删除:
删除
.sr中定义 + 确认加载路径 + 重启 BMC + 验证日志与接口
仅删除 .sr 文件中的定义不足以保证传感器不出现,必须结合配置与加载机制综合处理。
在 openUBMC 系统中,若需完整隐藏某个传感器(如从 Web 界面、IPMI、Redfish 等北向接口彻底移除),仅在 .sr 文件中删除传感器定义可能不足以完全生效,因为系统可能仍会加载旧配置或缓存对象。以下是完整、有效的解决方案。
根据提供的信息:
soft.sr 文件中删除了传感器定义(如 "ThreshholdSensor_CPU1Power")。SensorName 为 --,当前值为 0)。这表明:
.sr 定义并不足以阻止对象注册(特别是在自发现机制下)。cust 配置将 SensorType 设为 "Invalid Sensor Type"(推荐)适用场景:你想“逻辑删除”传感器,使其不在 Web、IPMI、Redfish 等北向接口显示,但保留
.sr中的定义(便于调试或临时启用)。
cust)文件中,找到目标传感器的配置项。SensorType 属性设置为字符串 "Invalid Sensor Type"。"ThreshholdSensor_CPU1Power": {
"SensorType": "Invalid Sensor Type"
}
依据:来自社区问答(
reference_id: 1)明确指出:“在
cust里把SensorType属性配置为Invalid sensor type才能屏蔽传感器的属性。”
.sr 中的传感器定义 + 确保不被加载适用场景:你想从系统中物理移除传感器定义。
删除 .sr 文件中的传感器定义
如已操作:
"ThreshholdSensor_CPU1Power": { ... }
从 soft.sr 或对应 CSR 文件中彻底移除。
确认该 .sr 文件会被正确加载
Connector_CPU1)是否正确定义。Presence 为 1(若 Presence = 0,SR 不会加载)。profile.txt 是否包含新增/修改的 .sr 文件路径。检查是否加载了定制版本(如 _cust.sr)
framework.log 中搜索 hwdiscovery 和 .sr 文件名:grep hwdiscovery /var/log/framework.log | grep CPU1
xxx_cust.sr 而非原文件。重启 BMC 或触发重新发现
reboot
hwdiscovery -r
验证是否注册
grep -i "register.*CPU1Power" /var/log/framework.log
适用场景:临时禁用传感器,无需修改
.sr或重启。
SetSensorStatus 方法:通过 D-Bus 调用禁用传感器:
SetSensorStatus("/xyz/openbmc_project/sensors/power/CPU1_Power", false)
.sr 不够?根据 sensor适配指南 和 event常见问题指南 分析:
.sr 文件。.sr 文件未被正确替换、缓存未清除、或有 _cust.sr 定制文件被优先加载,则修改可能不生效。SensorName: --),只要对象被注册,仍会在 sensor list 中占位。CPU1 Power 或类似名称ipmitool sdr list | grep "CPU1"
访问:
/redfish/v1/Chassis/chassis/Thermal#/Sensors
grep -i "CPU1Power" /var/log/framework.log
| 步骤 | 操作 |
|---|---|
| 1 | 在 .sr 文件中删除传感器定义 |
| 2 | 确保无 _cust.sr 文件覆盖 |
| 3 | 在 cust 配置中将 SensorType 设为 "Invalid Sensor Type"(双重保险) |
| 4 | 重启 BMC 或执行 hwdiscovery -r |
| 5 | 检查 framework.log 确认未加载 |
| 6 | 通过 Web/IPMI/Redfish 验证 |
Invalid Sensor Type 是标准做法:已被 openUBMC 社区验证,用于屏蔽传感器显示。SensorType 或 cust。ThreshholdSensor_CPU1Power 中 Threshhold 多了一个 h,应为 ThresholdSensor —— 建议检查命名是否规范。若要完整隐藏某个传感器:
推荐将
SensorType配置为"Invalid Sensor Type"若需彻底删除:
删除
.sr中定义 + 确认加载路径 + 重启 BMC + 验证日志与接口
仅删除 .sr 文件中的定义不足以保证传感器不出现,必须结合配置与加载机制综合处理。