在Ubuntu Server 21.04中创建自定义ISO,以进行无人值守和离线安装。

我需要创建一个包含cloud-init文件夹的.ISO镜像,其中包含autoinstall-user-data和meta-data文件,并编辑grub文件以使用它。
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=21.04
DISTRIB_CODENAME=hirsute
DISTRIB_DESCRIPTION="Ubuntu 21.04"

在这个版本的基本.ISO中,没有(我不知道是否有一个很好的原因?)isolinux文件夹和文件,所以如果我按照典型的步骤进行操作,最后我将无法使用genisoimage或类似软件创建自定义.ISO,因为我会缺少isolinux中的所有重要部分,例如在所有Ubuntu Server 20.4手册中提到的isolinux/txt.cfg来完成此任务。
对于如何为这个最新版本创建使用autoinstall-user-data进行无人值守安装的自定义.ISO有什么想法吗?
谢谢!

没有Ubuntu 21版本。 - David
1感谢您的备注。我已经编辑了标题,确保在正文中清楚地说明了版本为21.04。 - Pabolito Garci
2个回答

我所做的是从Ubuntu 20服务器ISO镜像中复制isolinux目录,进行更新,并创建自定义ISO镜像。这对我来说有效,但我想知道为什么isolinux目录会丢失,以及在Ubuntu版本大于20的情况下是否有其他首选方法来创建自定义Ubuntu镜像。

感谢您在这里分享了解决方法!我不确定您是否希望得到关于您后续猜测的回复,但如果是的话,我建议您提出一个新问题(或者您可以找到一些最新的相关资料 - 我们确实有很多关于此的帖子,但我在寻找最近的帖子时遇到了一些困难)。 - Zanna

其中一位subiquity开发者发布了一个项目,用于定制实时服务器ISO。

在此之前,社区成员还创建了一个项目,专门用于定制安装程序ISO以嵌入自动安装文件。

我自己没有尝试过这些解决方案。


非常棒的链接合集,谢谢。不幸的是,这些链接可能适用于Ubuntu 20.04,但更新的版本21.04在.ISO文件中没有isolinux文件夹,并且操作步骤基于其中文件的更改,以及重新创建.ISO文件,因此这些脚本可能适用于早期版本,但不适用于21.04。 - Pabolito Garci