通过 BIOS 串行或 Mac 选择自动安装配置

通过 BIOS 串行或 Mac 选择自动安装配置

我想为焦点 USB 拇指驱动器生成无头自动安装,其中所选配置由 bios 序列号(首选)或 MAC 地址选择。这个想法是为每个系统创建一个包含配置的文件夹

我看见https://cloudinit.readthedocs.io/en/latest/topics/datasources/nocloud.html它写了与 qemu 结合的序列号,但我不知道如何使用它

也欢迎任何其他解决此问题的想法。

答案1

我认为最通用的解决方案是创建一个非常基本的user-data文件,默认情况下用于所有启动。在该user-data文件中,使用early-commands在处创建特定于机器的配置/autoinstall.yaml。特定于机器的配置可以生成或简单地从预定义文件中复制。将early-commands能够使用任何可用于 shell 命令的内容,因此可以访问序列号或 MAC 地址。可能需要进行一些调整才能使early-commands按预期工作并获得/autoinstall.yaml文件的正确格式。

我不知道是否有人写过这个过程的完整例子,但是early-commands可以在以下位置找到文档:https://ubuntu.com/server/docs/install/autoinstall-reference

答案2

编辑:发现了我的错误,之前描述过,我使用 autoinstall.yaml 作为目标,而不是 /autoinstall.yaml

我将建议的解决方案与此处的部分内容结合起来根据 MA​​C 获取自动安装

现在我在 nocloud 文件夹中创建一个文件夹 install-configs,并在其中创建名为 serial 的文件,如下所示

dmidecode -s 系统序列号

所以我的早期命令现在复制了合适的配置

early-commands:
    - cp "/cdrom/nocloud/install-configs/$(dmidecode -s system-serial-number)" /autoinstall.yaml

相关内容