使用 Kmon 管理和监控 Linux 内核模块

克蒙 是一个开源的 Linux 内核管理器和活动监视器实用程序,用 编程语言。 它是一个简单的文本用户界面 (TUI) 工具,用于管理 Linux 内核模块和监视内核活动。 它允许用户加载、卸载、黑名单和显示内核模块的信息。 所有这些内核管理活动、硬件日志和其他内核消息都由 Kmod 中的实时活动监视器跟踪和显示。 在这个简短的指南中,我们将学习如何使用 Kmon 管理和监控 Linux 内核模块。

在 Linux 中安装 Kmon

由于它是用 Rust 编写的,因此可以使用安装 Kmon 货物 包管理器。 如以下链接所述,在您的 Linux 机器上安装 Rust。

  • 在 Linux 中安装 Rust 编程语言

然后运行以下命令安装 Kmon:

$ cargo install kmon

Kmon 可用于 AUR. 因此,您可以使用任何 AUR 辅助工具安装它,例如 example ,如下所示。

$ yay -S kmon

Kmon 也可用于 丙二醇 存储库。 在 Fedora 和其他基于 RPM 的系统,启用 Kmon 存储库 并安装它,如下所示。

$ sudo dnf copr enable atim/kmon
$ sudo dnf install kmon

在其他 Linux 发行版上,从以下位置下载最新的 Kmon 二进制文件 发布页面.

在编写本指南时,最新版本是 1.0.1.

$ wget https://github.com/orhun/kmon/releases/download/v1.0.1/kmon-1.0.1.tar.gz

提取下载的存档:

$ tar -xvzf kmon-1.0.1.tar.gz

将 Kmon 二进制文件移动/复制到您的 $PATH。

$ sudo cp kmon /usr/local/bin/

将 Kmon 手册页文件移动/复制到 /usr/local/man/man8/ 目录。

$ sudo mkdir /usr/local/man/man8/
$ sudo gzip /usr/local/man/man8/kmon.8

此外,您应该安装 libxcb 包以在无头服务器中复制/粘贴命令。

在 Debian/Ubuntu 上:

$ sudo apt install libxcb1-dev

在 Fedora/中央操作系统:

$ sudo dnf install libxcb-devel

使用 Kmon 管理和监控 Linux 内核模块

要启动 Kmon,只需从终端运行以下命令:

$ kmon

使用 Kmon 管理和监控 Linux 内核模块

正如您在上面的输出中看到的,Kmon 有 5 个块。

  • 搜索框 左上角 – 允许用户搜索特定的内核模块。
  • 内核发布 在顶部中间 – 显示当前加载的内核版本号。 继续按 TAB 键以显示内核版本和内核平台。
  • 加载的内核模块 搜索框下方 – 显示已加载模块的列表。
  • 模块 右上角 – 显示从 Loaded Kernel Modules 块中选择的模块的信息。
  • 内核活动 在底部 – 显示所有内核活动、硬件日志和其他内核消息。

显示 Kmon 帮助

请按 ? 或者 F1 键显示帮助部分。

显示内核详细信息

要查看当前加载的内核版本、版本号和平台,请按 标签 钥匙。

在块之间切换

您可以使用在块之间切换 右左 箭头或 高/升 键。

在块内向上/向下滚动

采用 上/下, k/j, alt-k/j 键在选定块内向上或向下滚动。

向上/向下滚动内核活动

PgUp/PgDn 键上下滚动内核活动。 同样,要向左或向右(水平)滚动内核活动,请按 alt-halt-l 键。 这在读取不适合内核活动块的冗长内核活动消息时很有用。

平滑滚动

采用 alt-jalt-k 缓慢滚动内核活动和模块信息块的键。

显示内核模块详细信息

要查看特定内核模块的信息,只需使用 Loaded Kernel Modules 块中的向上/向下箭头选择它。 选定的模块将显示在模块块中。

搜索内核模块

使用箭头键选择搜索框或按 s 或者 / 或者 进入 键并在搜索框中键入模块的名称。

在 Kmon 中搜索内核模块

加载模块

要将模块加载到 Linux 内核,请按其中一个 + 或者 一世 或者 插入 键切换到加载模式。 您也可以按向上/向下箭头在搜索模式和加载模式之间切换。 键入要加载的模块的名称。

在 Kmon 的加载模式中键入内核模块名称

加载模块

最后,按下 确认加载模块。 要取消加载操作,只需按 n.

使用 Kmon 将模块加载到 Linux 内核

使用 Kmon 将模块加载到 Linux 内核

用于加载模块的命令将显示在右侧。

$ modprobe <module_name>

卸载模块

在 Loaded Kernel Modules 块中选择要从 Linux 内核卸载的模块。 然后按 或者 或者 退格 键并按下 从 Linux 内核中删除选定的模块。

使用 Kmon 从 Linux 内核卸载模块

使用 Kmon 从 Linux 内核卸载模块

用于加载模块的命令将显示在右侧。

$ modprobe -r <module_name>

黑名单模块

Kmon 允许我们将模块列入黑名单,即阻止在 Linux 内核中加载。 从 Loaded Kernel Modules 块中选择要列入黑名单的模块,然后按 X 或者 b 或者 删除 键并按 Y 确认操作。

使用 Kmon 将内核模块列入黑名单

使用 Kmon 将内核模块列入黑名单

用于将所选模块列入黑名单的命令将显示在右侧。

if ! grep -q <module_name> /etc/modprobe.d/blacklist.conf; then
  echo 'blacklist <module_name>' >> /etc/modprobe.d/blacklist.conf
  echo 'install <module_name> /bin/false' >> /etc/modprobe.d/blacklist.conf
fi

复制粘贴

要将内容从 Kmon 界面复制到终端或文本文件中,请使用 Cv 键。 确保您已安装 libxcb 包如安装部分所示。

排序内核模块

Kmon 可以选择按名称或大小对内核模块进行排序。

要按名称对内核模块进行排序,请运行带有排序选项的 kmon 命令,如下所示。

$ kmon sort --name

要按大小对内核模块进行排序,请运行:

$ kmon sort --size

我们也可以使用逆向排序内核模块 r 或者 逆转 标志。

$ kmon --reverse

自定义颜色

Kmon 默认使用终端颜色。 但是,可以更改突出显示的颜色。

$ kmon --color majenta

或者,

$ kmon -c majenta

您甚至可以使用如下颜色代码指定您选择的自定义颜色。

$ kmon --color 00aeef

自定义 Kmon 突出显示颜色

自定义 Kmon 突出显示颜色

设置刷新间隔

要以毫秒为单位设置终端 UI 刷新间隔,请使用 -t 或者 –滴答率 旗帜:

$ kmon --color 00aeef -t 100

清除内核环形缓冲区

我们可以用 ctrl-l/u 或者 alt-c 键。

Exit 克蒙

要退出 Kmon,只需按 q 或者 ESC键 钥匙。

有关详细信息,请参阅帮助部分:

$ kmon --help

还有手册页:

$ man kmon

希望这可以帮助。

资源:

相关阅读:

  • 使用 Modinfo 命令显示 Linux 内核模块信息