当前使用命令:ipmitool raw 0x30 0x90 0x03 0x70 0xAA擦除了CpuBoard1中Board Extra的数据
现在Board Extra中是没有数据的
现在使用命令:ipmitool raw 0x30 0x90 0x05 0x46 0x02 0x06 0x00 0x0A来写Board Extra,无法写入,报错如下
请问我现在应该如何写Board Extra
当前使用命令:ipmitool raw 0x30 0x90 0x03 0x70 0xAA擦除了CpuBoard1中Board Extra的数据
现在Board Extra中是没有数据的
现在使用命令:ipmitool raw 0x30 0x90 0x05 0x46 0x02 0x06 0x00 0x0A来写Board Extra,无法写入,报错如下
请问我现在应该如何写Board Extra
答案内容由AI生成,仅供参考:
根据您提供的信息和知识库中的相关规范,您尝试使用命令 ipmitool raw 0x30 0x90 0x05 0x46 0x02 0x06 0x00 0x0A 写入 CpuBoard1 的 Board Extra 区域,但写入失败。以下分析和建议基于现有知识。
0x30 0x90 0x05 的作用知识库明确指出,0x30 0x90 0x05 是一条用于访问和修改 BMC 中 FRU 信息字段的 IPMI 命令。该命令可以修改 FRU 数据条目,包括 Board Extra 区域。因此,命令本身是正确的,但参数格式可能存在问题。
根据知识库中的 FRU 写入规范(文档块4),写入 FRU 数据时应遵循以下格式(以 0x30 0x90 0x05 为例):
0x30 0x90 0x05知识库中的示例(写电子标签):
ipmitool raw 0x30 0x90 0x05 0x00 0x03 0x06 0x00 0x0C 0x31 0x32 ...
其中0x00为 FRU ID,0x03为区域号?该处的具体映射可能需参考 BMC 的 FRU 数据结构。
您的命令 0x30 0x90 0x05 0x46 0x02 0x06 0x00 0x0A 中:
0x46(十进制 70)作为偏移量,可能不是 Board Extra 区域的起始偏移。Board Extra 数据位于 FRU 内部,其偏移取决于之前字段的长度(如 Board Mfg Date、Board Manufacturer 等)。通常需要先通过 fru print 或 fru read 工具查询当前的 FRU 结构,确定 Board Extra 区域的实际偏移。0x02 可能被误认为是 FRU ID,但通常 FRU ID 应为单字节(如 0x00, 0x01 等)。0x06 作为 field 编号是正确的(Board Extra)。0x00 表示写入偏移(从 0 开始?但已在前面指定了偏移 0x46,存在重复)。0x0A(10 字节)在 Board Extra 字段限制内(最大 48 字节)。可能的原因:参数顺序或偏移值与 BMC 期望的格式不匹配。
由于知识库未提供该平台 BMC 的完整命令字节映射,建议按以下通用方法操作:
确认 FRU 设备 ID:CpuBoard1 通常为 FRU ID 2(可通过 ipmitool fru print 或 fru list 确认)。
查询当前 FRU 结构:使用 ipmitool raw 0x30 0x90 0x04(读取 FRU 信息)获取完整的 FRU 二进制数据,解析出 Board Extra 区域的实际偏移和长度。
使用标准写入格式:
ipmitool raw 0x30 0x90 0x05 <FRU_ID> <Area> <Field> <Offset_within_field> <Length> <Data...>
<FRU_ID>: 如 CpuBoard1 为 2(0x02)<Area>: Board 区域通常为 0x02(标准 IPMI FRU 中 Board area = 2)<Field>: Board Extra 对应 field 6(0x06)<Offset_within_field>: 从该 field 的起始位置开始偏移(通常为 0)<Length>: 不超过 48 字节<Data>: 要写入的十六进制数据例如,向 FRU ID 2 的 Board Extra 写入 10 字节数据 31 32 33 34...(假设):
ipmitool raw 0x30 0x90 0x05 0x02 0x02 0x06 0x00 0x0A 0x31 0x32 0x33 0x34 0x35 0x36 0x37 0x38 0x39 0x30
检查命令是否被禁用:知识库中提到某些 raw 0x30 0x92 命令因“命令禁用”而失败。虽然您使用的是 0x30 0x90,但如果 BMC 安全策略限制了 FRU 写入,可能需要先执行:
ipmitool raw 0x30 0x90 0x21 0xf0 # 启用 BMC 定制模式(用于修改 FRU/BIOS 数据)
再执行写入命令。
验证写入结果:使用 ipmitool fru print 2(指定 FRU ID)查看 Board Extra 内容是否生效。
如果按照上述建议修改后仍无法写入,可能是 BMC 限制了 FRU 写入操作(如仅允许通过系统自带工具 WriteFRUData 等方法进行),此时建议联系 BMC 固件开发人员确认正确的写入命令。