8.45. Kmod-28

Kmod 软件包包含用于加载内核模块的库和工具。

估计构建时间: 0.1 SBU
需要硬盘空间: 13 MB

8.45.1. 安装 Kmod

准备编译 Kmod:

./configure --prefix=/usr          \
            --bindir=/bin          \
            --sysconfdir=/etc      \
            --with-rootlibdir=/lib \
            --with-xz              \
            --with-zstd            \
            --with-zlib

配置选项的含义:

--with-xz, --with-zlib, --with-zstd

它们允许 Kmod 处理压缩过的内核模块。

--with-rootlibdir=/lib

该选项保证一些和库有关的文件被放置在正确的目录中。

编译该软件包:

make

该软件包不包含能在 LFS chroot 环境下运行的测试套件。测试套件至少需要 git 程序的支持,且有些测试在 git 仓库外不会运行。

安装该软件包,并创建与 Module-Init-Tools (曾经用于处理 Linux 内核模块的软件包) 兼容的符号链接:

make install

for target in depmod insmod lsmod modinfo modprobe rmmod; do
  ln -sfv ../bin/kmod /sbin/$target
done

ln -sfv kmod /bin/lsmod

8.45.2. Kmod 的内容

安装的程序: depmod (到 kmod 的链接), insmod (到 kmod 的链接), kmod, lsmod (到 kmod 的链接), modinfo (到 kmod 的链接), modprobe (到 kmod 的链接), 以及 rmmod (到 kmod 的链接)
安装的库: libkmod.so

简要描述

depmod

根据现有模块的符号信息创建依赖关系文件;modprobe 使用依赖关系文件自动加载需要的模块

insmod

在正在运行的内核中安装可加载模块

kmod

加载或卸载内核模块

lsmod

列出当前加载的模块

modinfo

检验与某个内核模块相关的目标文件,打印它能够收集到的一切信息

modprobe

使用一个 depmod 创建的依赖关系文件,自动加载相关模块

rmmod

从正在运行的内核中卸载模块

libkmod

这个库被其他程序用于加载和卸载内核模块