环境信息
-
操作系统:[如 Ubuntu 24.04]
-
软件版本:[如 OpenUBMC2509]
-
硬件配置:[如 CPU、内存等]
报警:
ERROR: redfish接口配置文件不存在
ERROR: web_backend接口配置文件不存在
ERROR: snmp接口配置文件不存在
ERROR: 生成全量接口配置时发生错误: [Errno 13] Permission denied: ‘vnc.json’
操作系统:[如 Ubuntu 24.04]
软件版本:[如 OpenUBMC2509]
硬件配置:[如 CPU、内存等]
报警:
ERROR: redfish接口配置文件不存在
ERROR: web_backend接口配置文件不存在
ERROR: snmp接口配置文件不存在
ERROR: 生成全量接口配置时发生错误: [Errno 13] Permission denied: ‘vnc.json’
答案内容由AI生成,仅供参考:
| 项目 | 状态 | 说明 |
|---|---|---|
| HPM 包生成 | 已生成 /output/rootfs_openUBMC.hpm |
|
| HPM 包签名 | 已调用 cms_sign_hpm.sh 并生成 .signed 包 |
|
| 构建任务状态 | 所有 work.task_* 均完成 |
|
| YAML 配置缺失 | 可能影响后续签名合规性,需补充 | |
| 接口配置缺失 | 若服务未启用可忽略,否则需补全 | |
| 文件权限错误 | 需立即修复 vnc.json 权限问题 |
建议操作顺序:
chmod 644 vnc.json- 补全
.openubmc_config.yml中缺失的 base 配置- 清理缓存后执行一次完整构建验证
- 验证生成的 HPM 包是否可在目标设备上升级成功
如有需要,可提供 .openubmc_config.yml 示例模板进一步协助。
根据您提供的日志信息,以下是对 bingo build 过程的完整性判断以及相关报警问题的详细分析和解决方案。
结论:
构建主流程已完成,但存在多个警告和配置缺失问题。
尽管日志中出现了多个 ERROR 和 不能从 yaml 文件中获取到键值 的提示,但关键任务均已显示为“完成”:
work.task_buildhpm_ext4 完成 → HPM 包已成功构建。work.task_sign_and_pack_hpm 完成 → HPM 包已成功签名并复制到输出目录。/home/workspace/manifest/output/rootfs_openUBMC.hpm(大小 82MB),这是一个已签名的 HPM 包,可用于 BMC 固件升级。
综合判断:构建过程在技术上是成功的,输出了可用的固件包。
但存在配置缺失和权限错误,可能会在未来引发功能性或安全性问题。
以下是日志中出现的所有警告和错误,按类别分类并提供解决建议。
不能从 yaml 文件中获取到键值 base/vendor,没有相关配置
不能从 yaml 文件中获取到键值 base/signature/hpm_digest,没有相关配置
不能从 yaml 文件中获取到键值 base/signature/simple_signer_server,没有相关配置
不能从 yaml 文件中获取到键值 base/signature/signserver,没有相关配置
不能从 yaml 文件中获取到键值 base/signature/certificates,没有相关配置
这些属于 签名与厂商配置缺失,通常源于项目配置文件(如 .openubmc_config.yml 或 subsys.rc)未正确定义以下字段:
base/vendor)signserver)certificates)hpm_digest)这些配置在调试或社区版本中可能被忽略,但在正式发布或安全升级场景中必须存在。
subsys.rc),确保包含如下结构:base:
vendor: "OpenUBMC"
signature:
hpm_digest: "sha256"
signserver: "https://signing-server.example.com"
certificates:
- "path/to/rootca.der"
- "path/to/signer.pem"
# 使用 vscode-yaml 插件 + schema 校验
# schema: /usr/share/bingo/schema/subsys.rc.schema.json
ERROR: redis接口配置文件不存在
ERROR: web_backend接口配置文件不存在
ERROR: snmp接口配置文件不存在
ERROR: redfish接口配置文件不存在
这些是 服务模块的映射配置文件缺失,通常应位于 config/ 目录下,例如:
redis.jsonweb_backend.jsonsnmp.jsonredfish.json这些文件用于定义 HTTP 接口路由、鉴权方式、参数映射等。
确认是否已引入相关组件(如 web application, redfish_server):
ls -l components/ | grep -E "(web|redfish|snmp|redis)"
检查各组件仓库中是否存在默认配置文件模板,并确保 bingo build 时正确加载。
若为裁剪版固件(不启用某些服务),建议:
services:
web_backend: disabled
snmp: disabled
使用 bingo build 自带的配置检查功能验证语法:
bingo build # 会自动触发配置文件语法检查
ERROR: 生成全量接口配置时发生错误: [Errno 13] Permission denied: 'vnc.json'
当前用户 fs18 对文件 vnc.json 没有读/写权限,导致“生成全量接口配置”任务失败。
可能原因:
检查文件权限:
ls -l vnc.json
修复权限(以 fs18 用户为目标):
sudo chown fs18:fs18 vnc.json
chmod 644 vnc.json
确保构建过程中不会由 sudo 或 root 生成部分文件,以避免混合权限问题。
建议:使用统一工作区权限模型,避免跨用户操作。
| 类别 | 建议 |
|---|---|
使用 objdump 或专用工具检查 /home/workspace/manifest/output/rootfs_openUBMC.hpm 是否为合法、完整的 CMS 签名包。 |
|
如果未来需重新构建,建议清除临时目录:rm -rf /home/workspace/manifest/temp/build_* |
|
多份文档提到“升级 bingo 到最新版本可解决 build 问题”。建议运行:pip install --upgrade bingo 或使用 deb 包更新。 |
|
使用 bingo deploy 自动部署功能验证包可用性:bingo deploy -f output/rootfs_openUBMC.hpm --ip 192.168.x.x |
| 项目 | 状态 | 说明 |
|---|---|---|
| HPM 包生成 | 已生成 /output/rootfs_openUBMC.hpm |
|
| HPM 包签名 | 已调用 cms_sign_hpm.sh 并生成 .signed 包 |
|
| 构建任务状态 | 所有 work.task_* 均完成 |
|
| YAML 配置缺失 | 可能影响后续签名合规性,需补充 | |
| 接口配置缺失 | 若服务未启用可忽略,否则需补全 | |
| 文件权限错误 | 需立即修复 vnc.json 权限问题 |
建议操作顺序:
chmod 644 vnc.json- 补全
.openubmc_config.yml中缺失的 base 配置- 清理缓存后执行一次完整构建验证
- 验证生成的 HPM 包是否可在目标设备上升级成功
如有需要,可提供 .openubmc_config.yml 示例模板进一步协助。
构建成功了,上面的报错不影响构建继续执行。可以查看output目录下面是否存在生成的hpm包
fs18@bmc:/home/workspace/manifest$ ll /home/workspace/manifest/output/
total 83904
drwxr-xr-x 4 fs18 fs18 4096 Mar 10 09:36 ./
drwxrwxr-x 13 fs18 fs18 4096 Mar 10 09:02 ../
-rw-rw-r-- 1 fs18 fs18 3592304 Mar 10 09:34 graph.info
-rw-rw-r-- 1 fs18 fs18 275379 Mar 10 09:34 graph.order
drwxr-xr-x 73 fs18 fs18 4096 Mar 10 09:34 mdb/
-rw------- 1 fs18 fs18 1486 Mar 10 09:36 openubmc.perf
-rw-rw-r-- 1 fs18 fs18 11695 Mar 10 09:34 package.lock
drwxrwxr-x 3 fs18 fs18 4096 Mar 8 17:08 packet/
-rw------- 1 fs18 fs18 0 Mar 10 09:26 prof.perf.lock
-rw-rw-r-- 1 fs18 fs18 82006193 Mar 10 09:36 rootfs_openUBMC.hpm
fs18@bmc:/home/workspace/manifest$
构建结果镜像包rootfs_openUBMC.hpm
升级包构建成功了。最后打印的几行error是因为生成接口配置功能需要容器有root权限。