使用mkosi构建RHEL和RHEL UBI镜像
使用mkosi构建RHEL和RHEL
小编为大家讲一讲使用mkosi构建RHEL和RHEL的IT知识,接下来分享详细内容。
mkosi 是一个轻量级工具,用于从发行版软件包构建镜像。
本文介绍如何使用 mkosi 从 RHEL 和 RHEL 通用基础镜像Universal Base Image(UBI)的软件包构建镜像。
RHEL UBI 是 RHEL 的一个子集,可以在没有订阅的情况下免费使用。

mkosi 特性
mkosi 支持一些输出格式,但最重要的是 可发现磁盘镜像Discoverable Disk Images(DDI)。同一个 DDI 可用于引导容器、或运行在虚拟机、抑或是复制到 U 盘以引导真实物理机,然后从 U 盘复制到磁盘以引导系统。该镜像具有标准化的布局和描述其用途的元数据。
mkosi 依赖其他工具来完成大部分工作:使用systemd-repart在磁盘镜像上创建分区,使用mkfs.btrfs/mkfs.ext4/mkfs.xfs等创建文件系统,并使用dnf/apt/pacman/zypper下载和解压包。
mkosi 支持一系列发行版:Debian 和 Ubuntu、Arch Linux、openSUSE,当然还包括 Fedora、CentOS Stream 及其衍生版本,以及最近的 RHEL UBI 和 RHEL 。由于实际的“重活”是由其他工具完成的,mkosi 可以进行交叉构建。这意味着可以使用一个发行版构建各种其他发行版的镜像。唯一的要求是主机上安装了相应的工具。Fedora 有原生的apt、pacman和zypper,因此它为使用 mkosi 构建任何其他发行版提供了良好的基础。
它还有一些有趣的功能:镜像可以由非特权用户创建,或者在没有设备文件的容器中创建,特别是没有对回环设备的访问权限。它还可以在没有特权的情况下将这些镜像启动为虚拟机(使用qemu)。
配置是声明性的,非常容易创建。使用 systemd-repart 创建磁盘分区,并使用 repart.d 配置文件定义应该如何完成此操作。
项目目标
mkosi 的一个目标是允许对软件项目进行针对不同发行版的测试。它将为一个发行版创建一个镜像(使用该发行版的软件包),然后将软件项目编译并安装到该镜像中,插入不属于软件包的额外文件。但是,首个阶段,即从软件包创建镜像的过程,本身就是有用的。这是我们将首先展示的内容。
我们最近添加了对 RHEL 和 RHEL UBI 的支持。让我们从 RHEL UBI 开始,利用发行版软件包创建镜像。
请注意,下面的示例要求 mkosi 19,而且不适用于更早的版本。
带有 Shell 的基本 RHEL UBI 镜像
$ mkdir -p mkosi.cache
$ mkosi \
-d rhel-ubi \
-t directory \
-p bash,coreutils,util-linux,systemd,rpm \
--autologin
相关阅读
-
蓝屏代码0x00000e4 蓝屏代码0x00000f4解决教程
为网友们解答蓝屏代码0x00000f4解决教程的相关知识,关于蓝屏代码0x00000e4 蓝屏代码0x00000f4解决教程,接下来一起来看看吧。 有的win10系统用户在开机的过程中出现蓝屏代码0x00000f4的问题,这可
-
win10提示框关闭方法 windows10如何关闭提示
小编为网友们解答win10提示框关闭方法的方法内容,关于win10提示框关闭方法 windows10如何关闭提示,具体内容如下: win10在打开一些软件时经常会弹出提示框,非常烦人。我们可以在控制面板的
-
共享文件怎么设置不能修改 win7更改了共享设置不能保存解决教程
今天小编介绍win7更改了共享设置不能保存解决教程的相关话题,关于共享文件怎么设置不能修改 win7更改了共享设置不能保存解决教程,接下来小编为网友介绍。 这两天有小伙伴在使用win7的文
-
win8无线网络不见了怎么办 关于win8设置无线网络的方法
小编为大家讲一讲win8无线网络不见了怎么办和关于win8设置无线网络的方法的IT知识,接下来IT袋带大家一起了解。 不能搜索到无线信号或找不到无线网络 主机在需要使用无线网络时,发现搜索


