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

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

内容

  1. 在 Linux 中安装 Kmon
  2. 使用 Kmon 管理和监控 Linux 内核模块
    1. 显示 Kmon 帮助
    2. 显示内核详细信息
    3. 在块之间切换
    4. 在块内向上/向下滚动
    5. 向上/向下滚动内核活动
    6. 平滑滚动
    7. 显示内核模块详细信息
    8. 搜索内核模块
    9. 加载模块
    10. 卸载模块
    11. 黑名单模块
    12. 复制粘贴
    13. 排序内核模块
    14. 自定义颜色
    15. 设置刷新间隔
    16. 清除内核环形缓冲区
      1. Exit 克蒙

在 Linux 中安装 Kmon

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

  • 在 Linux 中安装 Rust 编程语言

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

$ cargo install kmon

Kmon 可以在 金子. 所以你可以使用任何 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/ CentOS:

$ sudo dnf install libxcb-devel

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

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

$ kmon

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

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

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

显示 Kmon 帮助

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

显示内核详细信息

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

在块之间切换

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

在块内向上/向下滚动

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

向上/向下滚动内核活动

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

平滑滚动

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

显示内核模块详细信息

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

搜索内核模块

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

在 Kmon 中搜索内核模块

加载模块

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

在 Kmon 中的 Load 模式下键入内核模块名称

加载模块

最后按 确认加载模块。 要取消加载操作,只需按 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 或者 或者 删除 键并按 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 或者 –tickrate 旗帜:

$ kmon --color 00aeef -t 100

清除内核环形缓冲区

我们可以使用以下命令清除内核环形缓冲区 ctrl-l/u 或者 alt-c 键。

Exit 克蒙

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

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

$ kmon --help

还有手册页:

$ man kmon

希望这可以帮助。

资源:

相关阅读:

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