手册:片段/安装/内核/Dist-Kernel

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:Parts/Installation/Kernel/Dist-Kernel and the translation is 96% complete.

可选: 使用 distribution 内核

Distribution 内核是涵盖了解包、配置、编译和安装内核完整过程的 ebuild。这种方法的主要优点是,内核可以作为 @world 的一部分来升级到新版本,而无需手动操作。Distribution 内核默认支持大多数硬件,但是它们也可以通过 /etc/portage/savedconfig 自定义。

有一些其它的方法可以定制内核配置例如配置片段

安装正确的 installkernel

在使用 distribution 内核前, 请验证系统已经安装的正确的 installkernel 软件包 。当使用 systemd-boot(以前是 gummiboot),请安装:

root #emerge --ask sys-kernel/installkernel-systemd-boot

当使用传统的 /boot 布局(例如 GRUB、LILO 等。), 应该已经默认安装了 gentoo 变量。如果有疑问:

root #emerge --ask sys-kernel/installkernel-gentoo

安装一个 distribution kernel

如果用 Gentoo 补丁从源码构建一个内核 ,输入:

root #emerge --ask sys-kernel/gentoo-kernel

想要避免编译本地内核源代码的系统管理员可以使用预编译的内核镜像:

root #emerge --ask sys-kernel/gentoo-kernel-bin

更新和清理

内核安装后,包管理器将自动更新到新版本。包管理器清理旧的软件包之前,将保留以前的版本。请记住定期运行:

root #emerge --depclean

为了节省空间。可以选择清理旧的内核版本

root #emerge --prune sys-kernel/gentoo-kernel sys-kernel/gentoo-kernel-bin

安装后/更新任务

Distribution kernels are now capable of rebuilding kernel modules installed by other packages. linux-mod.eclass provides USE=dist-kernel which controls a subslot dependency on virtual/dist-kernel.

启用像 sys-fs/zfssys-fs/zfs-kmod 这样的软件包,将允许它们在合适的情况下,自动根据新的内核进行重新编译,并相应地重新生成 initramfs!

手动重建 initramfs

需要的话, 可以手动重建 initramfs,内核更新后,执行:

root #emerge --ask @module-rebuild

如果其中任何模块(例如 ZFS)需要提前启动,需要之后重建 initramfs:

root #emerge --config sys-kernel/gentoo-kernel
root #emerge --config sys-kernel/gentoo-kernel-bin