26.6. SystemTap 交叉检测


交叉检测在一个主机上构建 SystemTap 模块,以便在其他主机上使用,而无需完整的软件套件。运行 SystemTap 脚本时,将从该脚本构建内核模块。然后,SystemTap 会将模块加载到内核中。

通常,SystemTap 脚本只能在部署了 SystemTap 的系统中运行。要在 10 个系统上运行 SystemTap,需要将 SystemTap 部署到所有这些系统上。在某些情况下,这可能并不可行。例如,企业策略可能会禁止编译器或调试数据,防止在所有目标系统上部署标准 SystemTap。

要临时解决这个问题,请使用交叉检测。交叉检测(Cross-instrumentation)是从系统中的 SystemTap 脚本生成 SystemTap 检测模块以在另一个系统上生成 SystemTap 检测模块的过程。这个过程具有以下优点:

  • 可以在单一主机上安装各种机器的内核信息软件包。内核打包错误可能会阻止安装。在这种情况下,主机系统和目标系统的 kernel-debuginfokernel-devel 软件包必须匹配。如果发生错误,请向红帽 JIRA 报告错误。
  • 每个目标机器只需要安装一个软件包就可以使用生成的 SystemTap 检测模块:systemtap-runtime。检测模块需要主机和目标系统共享相同的架构和发行版。

    术语
  • 检测模块

    在主机上构建 SystemTap 模块,然后将它加载到目标系统的内核。

  • 主机系统

    其上编译了检测模块(来自 SystemTap 脚本)的系统,将在目标系统上加载。

  • 目标系统

    正在构建检测模块的系统(来自 SystemTap 脚本)。

  • 目标内核

    目标系统的内核。这是加载并运行检测模块的内核。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部