Skip to the content.

7. Customization overview


本章概述了自定义live系统的各种方法。

7.1 Build time vs. boot time configuration

实时系统配置选项分为build-time选项(在构建时应用的选项)和boot-time选项(在启动时应用的选项)。boot-time选项进一步分为启动早期出现的选项(由live-boot包应用)和启动后期出现的选项(由live-config应用)。任何boot-time选项都可以由用户通过在启动提示符处指定来修改。映像也可以使用默认引导参数构建,这样当所有默认参数都合适时,用户通常可以直接引导到live系统,而无需指定任何选项。特别地,lb –bootappend-live的参数包含Live系统的任何默认内核命令行选项,例如持久性、键盘布局或时区。例如,请参阅Customizing locale and language

在lb config手册页中描述了build-time配置选项。boot-time选项在live-boot和live-config的手册页中有描述。尽管live-boot和live-config包安装在您正在构建的实时系统中,但建议您也将它们安装在构建系统中,以便在进行配置时方便参考。这样做是安全的,因为除非将系统配置为live系统,否则不会执行其中包含的任何脚本。

7.2 Stages of the build

构建过程分为几个阶段,每个阶段依次应用各种定制。要运行的第一个阶段是引导阶段。这是用包填充chroot目录以创建一个Debian系统的初始阶段。接下来是chroot阶段,该阶段完成了chroot目录的构建,用配置中列出的所有包以及任何其他材料填充该目录。大多数内容定制都发生在这个阶段。准备活动映像的最后阶段是二进制阶段,该阶段构建一个可引导映像,使用chroot目录的内容构建live系统的根文件系统,并在live系统的文件系统之外的目标介质上包含安装程序和任何其他附加材料。构建活动映像之后,如果启用,则在源阶段构建源tarball。

在每个阶段中,都有一个特定的命令应用顺序。它们以这样一种方式排列,以确保定制可以以合理的方式分层。例如,在chroot阶段,在安装任何包之前应用预种子,在复制任何本地包含的文件之前安装包,然后在所有材料都到位之后运行钩子。

7.3 Supplement lb config with files

虽然lb config在 config/ 目录中创建了一个框架配置,但为了实现您的目标,您可能需要在config/ 的子目录中提供额外的文件。根据文件在配置中的存储位置,它们可能被复制到live系统的文件系统或二进制映像文件系统中,或者可能提供系统的构建时配置,这些配置作为命令行选项传递会很麻烦。您可以包含诸如自定义包列表、自定义美术或钩子脚本之类的东西,以便在构建时或引导时运行,从而通过您自己的代码增强debian-live已经相当大的灵活性。

7.4 Customization tasks

下面的章节是根据用户通常执行的定制任务类型来组织的:Customizing package installationCustomizing contentsCustomizing locale and language只涵盖了您可能想要做的一些事情。