/lib/modules/ /build
/lib/modules/
是 Linux 系统中存放内核模块的目录,这些模块是内核功能的扩展,可以动态加载和卸载。而 /build
通常是一个用于存放编译过程中生成的文件的目录。在编译 Linux 内核的过程中,/build
目录下会包含内核源码的编译输出和相关配置文件。
编译内核前的准备
在开始编译内核之前,需要先下载内核源码。可以通过访问 www.kernel.org 来选择并下载所需的内核版本13。下载后,使用 tar
命令解压源码包,例如 tar xvfz linux-3.16.41.tar.gz
2。
配置内核
在编译内核之前,需要配置内核以决定将包含哪些模块。可以使用 make menuconfig
或 make xconfig
等命令来配置内核,这些命令会生成或更新 .config
文件,该文件包含了内核配置的详细信息67。
安装必要的软件包
编译内核可能需要一些额外的软件包,例如 ncurses-devel
,这可以通过包管理器安装,如使用 yum
的 yum install ncurses-devel -y
命令2。
编译内核
配置完成后,使用 make
命令开始编译过程。编译完成后,使用 make modules_install
将模块安装到 /lib/modules/
目录下4。
安装内核
编译并安装模块后,可以使用 make install
命令将新编译的内核安装到系统中,通常这会将新的内核文件放置在 /boot
目录下4。
使用新内核
安装新内核后,需要更新引导加载器(如 GRUB),以便在启动时可以选择新内核。更新 GRUB 后,重启系统即可使用新编译的内核。
特殊情况
如果需要与外部模块(如 ZFS 或 Nvidia DKMS)一起使用新内核,可能还需要安装相应的内核头文件,这可以通过 make headers_install
命令完成,并将头文件放置在 /usr/src/
目录下5。
注意事项
在编译内核的过程中,/build
目录是用来存放编译过程中的临时文件和最终的安装文件的。编译完成后,这个目录可以被删除以释放空间,但在此之前不要删除它,以免影响编译过程4。
以上就是关于 /lib/modules/
和 /build
目录在 Linux 内核编译过程中的作用和相关步骤的概述。如果你有特定的内核版本或特定的编译需求,可能还需要参考更详细的编译指南或内核文档。