创建自定义 Rocky Linux ISO
简介¶
您可能因为多种原因需要创建自定义 ISO。也许您想更改启动过程,添加特定软件包,或更新配置文件。
本指南将从头到尾指导您如何构建自己的 Rocky Linux ISO。
先决条件¶
- 一台运行 Rocky Linux 9 的 64 位机器
- 一个 Rocky Linux 9 DVD ISO 映像
- 一个用于应用于 ISO 的
kickstart
文件 - 阅读 Lorax 的 快速入门 和 mkksiso 文档,熟悉如何创建
Anaconda
boot.iso
。
软件包安装和设置¶
- 安装
lorax
软件包
sudo dnf install -y lorax
使用 kickstart 文件构建 ISO¶
- 运行
mkksiso
命令添加kickstart
文件,然后构建新的 ISO。
mkksiso --ks <PATH_TO_KICKSTART_FILE> <PATH_TO_ISO_TO_MODIFY> <OUTPUT_PATH_FOR_BUILT_ISO>
- 下面是一个示例
kickstart
文件example-ks.cfg
,它将 Rocky Linux 9.5 设置为Server With GUI
环境。
lang en_GB
keyboard --xlayouts='us'
timezone Asia/Tokyo --utc
reboot
cdrom
bootloader --append="rhgb quiet crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M"
zerombr
clearpart --all --initlabel
autopart
network --bootproto=dhcp
firstboot --disable
selinux --enforcing
firewall --enabled
%packages
@^server-product-environment
%end
向 ISO 映像添加包含软件包的仓库¶
- 确保您想添加的仓库内部有
repodata
目录。如果没有,您可以使用createrepo_c
命令创建它,并使用sudo dnf install -y createrepo_c
进行安装。 - 使用以下语法将仓库添加到您的
kickstart
文件中。
repo --name=extra-repo --baseurl=file:///run/install/repo/<YOUR_REPOSITORY>/
- 使用
mkksiso
工具的--add
标志来添加您的仓库。
mkksiso --add <LINK_TO_YOUR_REPOSITORY> --ks <PATH_TO_KICKSTART_FILE> <PATH_TO_ISO_TO_MODIFY> <OUTPUT_PATH_FOR_BUILT_ISO>
- 您可以在下面的示例中查看使用
baseos
仓库进行此过程的更多详细信息。 base os
仓库将与所有软件包一起被本地下载。
dnf reposync -p ~ --download-metadata --repo=baseos
- 然后将仓库添加到
kickstart
文件中。
repo --name=extra-repo --baseurl=file:///run/install/repo/baseos/
kickstart
文件将如下所示。
lang en_GB
keyboard --xlayouts='us'
timezone Asia/Tokyo --utc
reboot
cdrom
bootloader --append="rhgb quiet crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M"
zerombr
clearpart --all --initlabel
autopart
network --bootproto=dhcp
firstboot --disable
selinux --enforcing
firewall --enabled
%packages
@^server-product-environment
repo --name=extra-repo --baseurl=file:///run/install/repo/baseos/
%end
- 然后直接将
mkksiso
命令指向仓库目录并构建 ISO。
mkksiso --add ~/baseos --ks example-ks.cfg ~/Rocky-9.5-x86_64-dvd.iso ~/Rocky-9.5-x86_64-dvd-new.iso
结论¶
我将分享一些选项来调整和构建您的 Rocky Linux ISO。有关进一步的方法,包括修改内核 cmdline 参数,作者强烈建议您更详细地阅读 mkksiso 文档。
作者: Howard Van Der Wal
贡献者:Steven Spencer, Ganna Zhyrnova