社区工具

版本:22.03 LTS SP4

oemaker 使用指南

简介

本文档介绍 openEuler 镜像制作工具的安装和使用方法,以指导用户更好的完成镜像制作。

软硬件要求

使用 openEuler 制作工具制作 ISO 所使用的机器需要满足如下软硬件要求:

  • CPU 架构为 AArch64 或 X86_64。
  • 操作系统为 openEuler 22.03 LTS SP4。
  • 建议预留 60 GB 以上的磁盘空间(用于运行镜像制作工具和存放 ISO 镜像)。

安装工具

此处以 openEuler 22.03 LTS SP4 版本的 AArch64 架构为例,介绍 ISO 镜像制作工具的安装操作。

  1. 确认机器已安装操作系统 openEuler 22.03 LTS SP4(镜像制作工具的运行环境)。

    shell
     cat /etc/openEuler-release 
     openEuler release 22.03 LTS SP4
  2. 下载对应架构的 ISO 镜像(必须是 everything 版本),并存放在任一目录(建议该目录磁盘空间大于 20 GB),此处假设存放在 /home/ 目录。

    AArch64 架构的镜像下载链接为:

    https://repo.openeuler.org/openEuler-22.03-LTS-SP4/ISO/aarch64/openEuler-22.03-LTS-SP4-everything-aarch64-dvd.iso

  3. 创建文件 /etc/yum.repos.d/local.repo,配置对应 yum 源。配置内容参考如下,其中 baseurl 是用于挂载 ISO 镜像的目录:

    shell
    [local]
    name=local
    baseurl=file:///home/oemaker_iso
    gpgcheck=0
    enabled=1
  4. 使用 root 权限,挂载光盘镜像到 /home/oemaker_iso 目录(请与上述 repo 文件中配置的 baseurl 保持一致)作为 yum 源,参考命令如下:

    shell
    sudo mount -o loop /home/openEuler-22.03-LTS-SP4-everything-aarch64-dvd.iso /home/oemaker_iso
  5. 使 yum 源生效:

    shell
    yum clean all
    yum makecache
  6. 使用 root 权限,安装镜像制作工具:

    shell
    sudo yum install -y oemaker
  7. 使用 root 权限,确认工具已安装成功:

    shell
     sudo oemaker -h
     Usage: oemaker [-h] [-t Type] [-p Product] [-v Version] [-r RELEASE] [-s REPOSITORY]
     
     optional arguments:
         -t Type        ISO Type, include standard debug source everything everything_debug everything_src livecd and netinst
         -p Product     Product Name, such as: openEuler
         -v Version     version identifier
         -r RELEASE     release information
         -s REPOSITORY  source dnf repository address link(may be listed multiple times)
         -h             show the help message and exit

制作镜像

此处介绍如何使用镜像制作工具基于 openEuler 光盘镜像制作新镜像的方法。

命令介绍

命令格式

镜像制作工具通过 oemaker 命令执行功能。命令的使用格式为:

shell
oemaker [ --help | -h ] [ -t <ISO type> ] [ -p <Product name> ] [ -v <Version number> ] [-r <Release information> ] [-s <Source dnf repository address link>]

参数说明

参数是否必选参数含义
--help \ -h查询命令的帮助信息。
-t &lt;ISO type&gt;镜像制作类型:standard、debug、 source、 everything、 everything_debug、 everything_src、 livecd 和 netinst。
-p &lt;Product name&gt;产品名称。
-v &lt;Version number&gt;产品版本号。
-r &lt;Release information&gt;发布信息。
-s &lt;Source dnf repository address link&gt;软件安装源。

软件包来源

镜像的 RPM 包来源有:

  • 原有 ISO 镜像:该情况通过配置文件 rpmlist 指定需要安装的 RPM 软件包,配置格式为 "软件包名",例如:kernel。

  • 额外定制包:添加额外包到/home/oemaker_iso中,通过原镜像normal.xml使用createrepo命令重新生成源。

    说明

    • 制作镜像时,若无法找到配置文件中指定的 RPM 包,则镜像中不会添加该 RPM 包。
    • 若 RPM 包的依赖有问题,则制作镜像时可能会报错。

操作指导

以livecd镜像制作为例

  1. 修改配置文件 /opt/oemaker/config/aarch64/livecd/rpmlist,指定用户需要安装的 RPM 软件包。

    shell
     sudo vi /opt/oemaker/config/aarch64/livecd/rpmlist
  2. 确定运行镜像制作工具的临时目录或根目录空间大于 60 GB 。

    shell
     df -h
     Filesystem                            Size  Used Avail Use% Mounted on
     devtmpfs                              1.2G     0  1.2G   0% /dev
     tmpfs                                 1.5G     0  1.5G   0% /dev/shm
     tmpfs                                 1.5G   23M  1.5G   2% /run
     tmpfs                                 1.5G     0  1.5G   0% /sys/fs/cgroup
     /dev/mapper/openeuler_openeuler-root   69G  2.8G   63G   5% /
     /dev/sda2                             976M  114M  796M  13% /boot
     /dev/mapper/openeuler_openeuler-home   61G   21G   38G  35% /home
  3. 执行制作。

    执行制作命令,示例:

    shell
    cd /opt/oemaker
    ./oemaker.sh -t livecd -p openEuler -v 22.03-LTS-SP4 -r '' -s "file:///home/oemaker_iso"

    结果输出在/result/目录下:

    shell
    ls /result/ -l
    total 549052
    -rw-r--r-- 1 root root     20244 Nov 17 15:24 openEuler-livecd-22.03-LTS-SP4-aarch64_binary.rpmlist
    -rw-r--r-- 1 root root 562188288 Nov 17 15:24 openEuler-livecd-22.03-LTS-SP4-aarch64.iso
    -rw-r--r-- 1 root root     15736 Nov 17 15:24 openEuler-livecd-22.03-LTS-SP4-aarch64_source.rpmlist