KERNEL-INSTALL.ECLASS
章节: eclass-manpages (5)更新: 2024年11月
索引 返回主内容
名称
kernel-install.eclass - 分发版内核的安装机制描述
此 eclass 提供了测试和安装不同类型的分发版内核软件包所需的逻辑,包括从源代码构建的内核和作为二进制文件分发的内核。该 eclass 依赖于 ebuild 将构建的内核树的一部分安装到 /usr/src/linux-${PV} 中,其中包含内核映像及其标准位置和 System.map。该 eclass 导出 src_test、pkg_preinst、pkg_postinst 和 pkg_postrm。
支持的 EAPIs
8传递提供的 ECLASSES
dist-kernel-utils函数
- kernel-install_can_update_symlink
- 确定是否应该更新 <target>(完整路径)处的符号链接。如果应该更新,则返回 0;如果应该保持不变,则返回 1。
- kernel-install_update_symlink <target> <version>
- 如果 <target>(完整路径)处的内核源代码符号链接不存在或指向此软件包的较旧版本,则使用指向 <target>-<version> 的链接更新它。
- kernel-install_get_qemu_arch
- 获取当前 ${ARCH} 的适当 qemu 后缀。
- kernel-install_create_init <filename>
- 创建最小的 /sbin/init
- kernel-install_create_qemu_image <filename>
- 创建最小的 qemu raw 镜像
- kernel-install_test <version> <image> <modules>
- 测试内核是否可以成功在 qemu 中启动一个最小的系统镜像。<version> 是内核版本,<image> 是镜像的路径,<modules> 是模块树的路径。
- kernel-install_pkg_pretend
- 检查缺少的可选依赖项并输出警告。
- kernel-install_src_test
- 提醒人们调用测试的样板函数。
- kernel-install_pkg_preinst
- 验证内核是否已正确安装。
- kernel-install_extract_from_uki <type> <input> <output>
- 从 UKI 中提取内核映像或 initrd。<type> 必须是“linux”或“initrd”。
- kernel-install_install_all <ver>
- 安装内核,initramfs/uki 生成由 installkernel 可选处理。这在 pkg_postinst() 和 pkg_config() 中被调用。<ver> 是完整的内核版本。
- kernel-install_pkg_postinst
- 为内核构建 initramfs,安装它并更新 /usr/src/linux 符号链接。
- kernel-install_pkg_postrm
- 清理已删除的内核目录中生成的 initramfs。
- kernel-install_pkg_config
- 重新构建 initramfs 并重新安装内核。
- kernel-install_compress_modules
- 如果启用了 USE=modules-compress,则压缩 ED 中安装的模块。
ECLASS 变量
- KERNEL_IUSE_GENERIC_UKI (在继承之前设置)
- 如果设置为非空值,则添加 IUSE=generic-uki 和安装通用统一内核映像所需的逻辑。
- KV_FULL
- 包含完整内核发布版本的字符串,例如'6.9.6-gentoo-dist'。默认为 ${PV}${KV_LOCALVERSION},但当此默认值与内核发布版本不匹配时,可以由 ebuild 设置。kernel-build.eclass 将其设置为构建的内核的 kernel.release 文件中的内容。
- KV_LOCALVERSION
- 包含内核 LOCALVERSION 的字符串,例如'-gentoo'。仅在安装二进制内核时需要设置,kernel-build.eclass 从内核配置中获取它。
作者
Michał Górny <[email protected]>维护者
分发版内核项目 <[email protected]>报告 Bug
请通过 https://bugs.gentoo.org/ 报告 Bug文件
kernel-install.eclass参见
ebuild(5)https://gitweb.gentoo.org/repo/gentoo.git/log/eclass/kernel-install.eclass
索引
本文件由 man2html 使用手册页创建。
时间: 2024年11月12日 格林尼治标准时间03:27:00