documentation.suse.com / SUSE Edge 文档 / 查错 / Edge Image Builder (EIB) 查错

46 Edge Image Builder (EIB) 查错

EIB 用于创建自定义 SUSE Edge 映像。

常见问题
  • 错误的 SCC 代码:确保 EIB 定义文件中使用的 SCC 代码与 SL Micro 版本和体系结构相匹配。

  • 依赖项缺失:确保构建环境中没有缺失的软件包或工具。

  • 映像大小不正确:对于原始映像,必须指定 diskSize 参数,其值很大程度上取决于映像中包含的映像、RPM 及其他制品。

  • 权限:如果在 custom/files 目录中存储脚本,则确保脚本具有可执行权限,因为这些文件仅在 Combustion 阶段可用,EIB 不会对其进行修改。

  • 操作系统组依赖项:创建需要设置自定义用户和组的映像时,应明确预先创建作为“primaryGroup”的组。

  • 操作系统用户的 SSH 密钥需要主目录:创建需要设置带 SSH 密钥的用户的映像时,还需使用 createHomeDir=true 创建主文件夹。

  • Combustion 问题:EIB 依赖 Combustion 来自定义操作系统并部署其他所有 SUSE Edge 组件,包括存放在 custom/scripts 文件夹中的自定义脚本。需要注意的是,Combustion 过程在 initrd 阶段执行,因此脚本执行时系统尚未完全引导。

  • Podman 计算机大小:如第 IV 部分 “提示和技巧”中所述,在非 Linux 操作系统上,需要验证 Podman 计算机是否有充足的 CPU/内存来运行 EIB 容器。

日志
  • EIB 输出eib build 命令的控制台输出可提供极为重要的信息。

  • 构建容器日志:检查构建容器的日志。生成的日志存放在用于存储制品的目录中。也可通过 docker logspodman logs 获取必要信息。

    注意
    注意

    有关详细信息,请参见调试

  • 临时构建目录:EIB 会在构建过程中创建临时目录。如果主要输出的信息不充足,可在这些目录中查看中间日志或制品。

  • Combustion 日志:如果使用 EIB 构建的映像因任何原因无法引导,可以使用 root 外壳。连接到主机控制台(物理连接或通过 BMC 等方式),使用 journalctl -u combustion 检查 Combustion 日志,或使用 journalctl 查看所有操作系统日志,确定失败的根本原因。

查错步骤
  1. 查看 eib-build 输出:控制台输出中的错误消息通常具有明确指示性。

  2. 检查构建环境:确保运行 EIB 的计算机满足 EIB 本身的所有先决条件(例如,docker/podman、充足的磁盘空间)。

  3. 检查构建容器日志:查看失败容器的日志以获取更详细的错误信息(见上文)。

  4. 验证 eib 配置:仔细检查 eib 配置文件是否有拼写错误,或者其中的源文件/构建脚本路径是否不正确。

    • 单独测试组件:如果 EIB 构建涉及自定义脚本或阶段,单独运行它们以隔离故障。

注意
注意

请参见 Edge Image Builder 调试

Documentation survey