构建你的BMC
更新时间:2025/4/8
在Gitcode上查看源码

快速上手是openUBMC的特色之一,在接下来的章节中,您将会逐渐地接触如何开发一些openUBMC中常见的场景。我们推荐根据如下的学习路线开展您的openUBMC之旅。

在本篇文档中,你将学习如何构建一个属于自己的bmc软件版本。

WARNING

在上手之前,请务必完成《环境准备》章节中的准备工作,避免因为环境配置错误导致无法继续。

获取manifest

NOTE

manifest是openUBMC中对产品的配置集,用于定义一款BMC产品具体使用的组件版本、三方库依赖关系、定制化构建脚本等。
具体请参考《产品构建》

如果已经获取manifest,可以跳过此步骤。

拉取manifest代码仓 执行git clone获取manifest代码

shell
git clone git@gitcode.com:openUBMC/manifest.git

整包构建

使用manifest能够自动化完成openUBMC的整包构建。通过使用bingo工具开启自动化构建流程。

shell
cd /home/workspace/manifest
bingo build

查看manifest/output文件夹下存在rootfs_openUBMC.hpm即为整包构建成功。

整包测试

仿真运行

openUBMC社区支持使用Qemu模拟BMC运行环境,减少对整机的依赖。

仿真包构建

在构建出包阶段,需要单独构建qmeu固件包。

shell
bingo build -sc qemu

通过查看manifest/output/packet/inner文件夹下存在openUBMC_25.00.00.01_qemu.cpio.gz即为构建成功。

shell
> ls /home/workspace/manifest/output/packet/inner
openUBMC_25.00.00.01_qemu.cpio.gz

仿真环境启动

openUBMC提供了python脚本,方便启动环境。

shell
cd /home/workspace/manifest
python3 build/works/packet/qemu_shells/vemake_1711.py

qemu启动后,会自动进入仿真BMC的串口环境及打印,和真实环境操作一致,这时可以通过串口登录BMC系统。

仿真环境初始化完毕后,可以通过任意方式访问BMC:

  • web登录形式:https://ip:10443
  • ssh登录方式:ssh Administrator@ip -p 10022

仿真环境端口映射:

sshwebipmisnmp
10022104431062310161