BMCSet_Copyright (0x30/0x93) 在 openUBMC 上被禁用

[提问] OEM 命令 BMCSet_Copyright (0x30/0x93) 在 openUBMC 上被禁用:iBMC V2 正常,openUBMC 返回 disabled / 行为异常

背景

在 iBMC 的《IPMI 定制化接口…》文档里有一个 BMCSet_Copyright(命令 NetFn=0x30, Cmd=0x93),用于配置 Web/UI 上显示的版权字符串(不含 Copyright 前缀部分,仅设置正文)。

我在多台环境验证时发现:iBMC V2 行为正常,但 openUBMC下该 RAW 命令表现为 disabled 或返回异常/不一致结果,想请教社区这是否为 openUBMC 的预期策略(默认禁用 OEM SetInfo 类写操作)还是实现缺陷/权限策略问题。


命令说明(按文档)

  • ipmitool raw 0x30 0x93 ...

  • 后续 payload 开头包含:

    • Manufacturer ID:0x0007DB(LSB first: db 07 00

    • Sub command:0x35(SetInfo)

    • Function ID:文档定义(我这里用 07 00

    • 后续为对象/信息参数 + len + ASCII 数据


复现 1:环境 A(iBMC V2 / 或等价实现),命令可执行但返回疑似异常回显

执行:

ipmitool -I lanplus -H 192.168.13.204 -U Administrator -P '******' \
  raw 0x30 0x93 \
  0xdb 0x07 0x00 0x35 0x07 0x00 0x01 0x00 0x00 0x00 \
  0xff 0xff 0x00 0x01 0x00 0x03 0x00 0x00 0x01 0x31

输出:

db 07 00

复现 2:环境 B(openUBMC / 或类似),直接报 command disabled

执行:

ipmitool -I lanplus -H 192.169.2.62 -U xxx-P '******' -C 17 \
  raw 0x30 0x93 \
  0xdb 0x07 0x00 0x35 0x07 0x00 0x01 0x00 0x00 0x00 \
  0xff 0xff 0x00 0x01 0x00 0x03 0x00 0x01 0x35

报错:

Unable to send RAW command (channel=0x0 netfn=0x30 lun=0x0 cmd=0x93 rsp=0xd6):
Cannot execute command, command disabled

结论:

  • BMC 明确返回 completion code 0xD6(Cannot execute command, command disabled)。

  • 看起来是 命令级别被策略禁用

V2使用的这个ipmi命令是通用命令,这种通用命令在openUBMC理论上不适用,如果需要该功能,得单独适配;你可以找一份ipmi接口资料自行确认下。