11.4. 扩展发现镜像
可以使用自定义事实、软件或设备驱动程序扩展卫星发现镜像。您还可以提供一个压缩存档文件,其中包含要使用的镜像的额外代码。
首先,创建以下目录结构:
其中:
autostart.d
目录包含镜像启动时按 POSIX 顺序执行的脚本,但在主机注册到 Satellite 之前。bin
目录添加到 $PATH 变量中;您可以在此放置二进制文件,并在自动启动脚本中使用它们。事实
目录添加到 FACTERLIB 变量,以便配置自定义事实并发送到 Satellite。lib
目录被添加到 LD_LIBRARY_PATH 变量中,lib/ruby
被添加到 RUBYLIB 变量中,以便正确执行/bin
中的二进制文件。
新指令和选项附加到现有环境变量(PATH、LD_LIBRARY_PATH、RUBYLIB 和 FACTERLIB)。如果您需要在脚本中明确指定内容的路径,则 zip 内容将提取到镜像上的
/opt/extension
目录中。
创建以上目录结构后,使用以下命令将其打包到 zip 存档中:
zip -r my_extension.zip .
zip -r my_extension.zip .
您可以创建多个 zip 文件,但请注意,它们将提取到 Discovery 镜像上的同一位置,因此如果文件具有相同的文件名,则后续 zips 的文件将覆盖以前的文件。
要通知发现镜像应使用的扩展,请将 zip 文件放在带有发现镜像的 TFTP 服务器中,然后使用
fdi.zips
选项更新 PXELinux 模板的 APPEND 行,其中路径相对于 TFTP root。例如,如果您在 $TFTP/zip1.zip
和 $TFTP/boot/zip2.zip
中有两个存档,请使用以下语法:
fdi.zips=zip1.zip,boot/zip2.zip
fdi.zips=zip1.zip,boot/zip2.zip
有关更新 PXE 模板的更多信息,请参阅 第 11.1.2 节 “配置 PXE 引导”。