第 6 章 Completing post customization tasks


To complete the customizations made, perform the following tasks:

  • Create a product.img image file (applies only for graphical customizations).
  • Create a custom boot image.

This section provides information about how to create a product.img image file and to create a custom boot image.

6.1. Creating a product.img file

A product.img image file is an archive containing new installer files that replace the existing ones at runtime.

During a system boot, Anaconda loads the product.img file from the images/ directory on the boot media. It then uses the files that are present in this directory to replace identically named files in the installer’s file system. The files when replaced customizes the installer (for example, for replacing default images with custom ones).

注意

The product.img image must contain a directory structure identical to the installer. For more information about the installer directory structure, see the table below.

Expand
表 6.1. Installer directory structure and custom contents
Type of custom contentFile system location

Pixmaps (logo, sidebar, top bar, and so on.)

/usr/share/anaconda/pixmaps/

GUI stylesheet

/usr/share/anaconda/anaconda-gtk.css

Anaconda add-ons

/usr/share/anaconda/addons/

Profile configuration files

/etc/anaconda/profile.d/

Custom configuration files

/etc/anaconda/conf.d/

Anaconda DBus service conf files

/usr/share/anaconda/dbus/confs/

Anaconda DBus service files

/usr/share/anaconda/dbus/services/

Procedure

  1. Navigate to a working directory such as /tmp, and create a subdirectory named product/:

    $ cd /tmp
  2. Create a subdirectory product/

    $ mkdir product/
  3. Create a directory structure identical to the location of the file you want to replace. For example, if you want to test an add-on that is present in the /usr/share/anaconda/addons directory on the installation system, create the same structure in your working directory:

    $ mkdir -p product/usr/share/anaconda/addons
    注意

    To view the installer’s runtime filesystem, boot the installation and switch to virtual console 1 (Ctrl+Alt+F1) and then switch to the second tmux window (Ctrl+b+2). A shell prompt that can be used to browse a file system opens.

  4. Place your customized files (in this example, custom add-on for Anaconda) into the newly created directory:

    $ cp -r ~/path/to/custom/addon/ product/usr/share/anaconda/addons/
  5. Repeat steps 3 and 4 (create a directory structure and place the custom files into it) for every file you want to add to the installer.
  6. Create a .buildstamp file in the root of the directory. The .buildstamp file describes the system version, the product and several other parameters. The following is an example of a .buildstamp file from Red Hat Enterprise Linux 8.4:

    [Main]
    Product=Red Hat Enterprise Linux
    Version=8.4
    BugURL=https://bugzilla.redhat.com/
    IsFinal=True
    UUID=202007011344.x86_64
    [Compose]
    Lorax=28.14.49-1

    The IsFinal parameter specifies whether the image is for a release (GA) version of the product (True), or a pre-release such as Alpha, Beta, or an internal milestone (False).

  7. Navigate to the product/ directory, and create the product.img archive:

    $ cd product
    $ find . | cpio -c -o | gzip -9cv > ../product.img

    This creates a product.img file one level above the product/ directory.

  8. Move the product.img file to the images/ directory of the extracted ISO image.

    The product.img file is now created and the customizations that you want to make are placed in the respective directories.

    注意

    Instead of adding the product.img file on the boot media, you can place this file into a different location and use the inst.updates= boot option at the boot menu to load it. In that case, the image file can have any name, and it can be placed in any location (USB flash drive, hard disk, HTTP, FTP or NFS server), as long as this location is reachable from the installation system.

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部