我想制作一个 alpine 安装 iso,它具有以下属性:
在安装过程中,它有一个应答文件,以便安装过程(安装脚本)在安装过程中采用这些默认输入(时区、键盘类型等...)
ISO 预先打包了某些“救星依赖项”,例如 wpa_supplicant(用于 wifi)和用于连接的蓝牙驱动程序。
安装一旦手动启动,就会使用 #1 中的默认值完成安装,无需手动输入。
安装后,它会创建一个具有必要权限的用户配置文件,并进行首次设置,例如拉入所需的库和/或连接到“母服务器”以进行进一步配置。
我探索了很多选项:alpine-linux-iso-maker 脚本、Cobbler、Chef 等...唯一接近完成此任务的是使用应答文件的 /sbin/setup-* 脚本。
是否有标准方法将答案文件和依赖项烘焙到 alpine linux iso 中?
答案1
- Alpine 附带了多个帮助程序脚本,其中之一是 setup-alpine。该脚本支持应答文件,如您所见:
usage: setup-alpine [-ahq] [-c FILE | -f FILE]
Setup Alpine Linux
options:
-a Create Alpine Linux overlay file
-c Create answer file (do not install anything)
-e Empty root password
-f Answer file to use installation
-h Show this help
-q Quick mode. Ask fewer questions.
因此,您可以使用您的首选设置创建答案文件。
Alpine Extended 有这些软件包,否则如果您想要自定义 ISO,您可以使用附带的脚本
aports
:https://gitlab.alpinelinux.org/alpine/aports/tree/master/scripts关于如何为 alpine 创建自定义 iso 的好教程可以在这里找到: https://wiki.alpinelinux.org/wiki/How_to_make_a_custom_ISO_image_with_mkimage
请参阅第 n.1 点
setup-alpine -c
以及setup-alpine -f
这稍微复杂一些。您可以继续编写一个脚本来输入
/etc/local.d
谁执行该任务,但在初始设置之后,您应该将其从自动启动中删除(使用rc-update del local
)。此类脚本的一个很好的例子可以在这里找到:https://git.sr.ht/~sircmpwn/builds.sr.ht/tree/master/images/alpine/genimg