如何检查 Linux 中性能配置文件是否激活

LinuxLinuxBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在这个实验中,你将学习如何使用 tuned-adm 命令行工具来检查 Linux 中性能配置文件是否处于激活状态。该工具通过根据针对特定工作负载优化的预定义配置文件动态调整设置来管理系统性能。

你将探索如何使用 tuned-adm activetuned-adm status 来识别当前激活的 tuned 配置文件。你还将学习如何解读输出结果,以确定哪个配置文件处于激活状态,或者是否没有激活任何配置文件,并了解执行这些命令时 sudo 权限的重要性。此外,你将学习如何使用 sysctl -a 验证 sysctl 设置,并使用 cat /etc/tuned 检查 tuned 配置。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/UserandGroupManagementGroup(["User and Group Management"]) linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/TextProcessingGroup(["Text Processing"]) linux(("Linux")) -.-> linux/SystemInformationandMonitoringGroup(["System Information and Monitoring"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/TextProcessingGroup -.-> linux/grep("Pattern Searching") linux/SystemInformationandMonitoringGroup -.-> linux/service("Service Managing") linux/UserandGroupManagementGroup -.-> linux/sudo("Privilege Granting") subgraph Lab Skills linux/echo -.-> lab-558892{{"如何检查 Linux 中性能配置文件是否激活"}} linux/ls -.-> lab-558892{{"如何检查 Linux 中性能配置文件是否激活"}} linux/cat -.-> lab-558892{{"如何检查 Linux 中性能配置文件是否激活"}} linux/grep -.-> lab-558892{{"如何检查 Linux 中性能配置文件是否激活"}} linux/service -.-> lab-558892{{"如何检查 Linux 中性能配置文件是否激活"}} linux/sudo -.-> lab-558892{{"如何检查 Linux 中性能配置文件是否激活"}} end

使用 tuned-adm active 检查配置文件

在这一步中,我们将探索如何使用 tuned-adm 检查当前激活的配置文件。tuned-adm 是一个命令行工具,用于根据预定义的配置文件动态调整系统设置,从而管理系统性能。这些配置文件针对特定的工作负载(如吞吐量、延迟或节能)对系统进行优化。

首先,让我们了解一下什么是 tuned 配置文件。tuned 配置文件是一组设置,用于针对特定工作负载优化你的系统。这些设置可以包括 CPU 频率缩放、磁盘 I/O 调度和网络调优参数。

要检查当前激活的 tuned 配置文件,请打开你的终端。请记住,终端是你与 Linux 系统进行交互的命令中心。你可以在桌面左侧找到 Xfce 终端 图标。

现在,输入以下命令并按回车键:

sudo tuned-adm active

此命令会查询 tuned 守护进程并显示激活的配置文件的名称。你应该会看到类似以下的输出:

Current active profile: virtual-guest

输出中的 virtual-guest 表示 virtual-guest 配置文件当前处于激活状态。此配置文件通常用于虚拟机,并针对虚拟化环境优化系统。

如果没有激活任何配置文件,输出将是:

No current active profile.

需要注意的是,你需要 sudo 权限才能运行 tuned-adm 命令,因为它们会修改系统设置。sudo 允许你以管理员权限执行命令。

现在,让我们尝试另一个命令,以获取有关 tuned 守护进程的更多信息:

sudo tuned-adm status

此命令会提供更详细的状态报告,包括激活的配置文件、任何已应用的调优插件以及任何警告或错误。输出可能如下所示:

Currently active profile: virtual-guest
plugin: (...)
(...)

tuned-adm status 命令对于故障排除和验证 tuned 守护进程是否正常运行很有用。

通过检查激活的配置文件,你可以确保系统针对其预期用途进行了优化。如果你需要切换到不同的配置文件,可以使用 tuned-adm profile 命令,我们将在后续步骤中探讨该命令。

使用 sysctl -a 验证 sysctl 设置

在这一步中,我们将使用 sysctl 命令查看当前的系统设置。sysctl 是一个强大的工具,允许你在运行时配置内核参数。这些参数控制着系统行为的各个方面,如网络、内存管理和安全。

可以把 sysctl 看作是一种无需重启就能微调 Linux 系统的方法。这就像调整汽车的设置以优化其性能一样。

要查看所有当前的 sysctl 设置,请打开终端并输入以下命令:

sudo sysctl -a

此命令将显示一长串内核参数及其当前值。输出将类似于以下内容:

kernel.domainname = (none)
kernel.osrelease = (...)
kernel.ostype = Linux
kernel.panic = 60
(...)
net.ipv4.ip_forward = 0
net.ipv4.tcp_rmem = 4096    131072  6291456
(...)
vm.swappiness = 60
vm.vfs_cache_pressure = 100

输出的结构为 参数 = 值。每一行代表一个特定的内核参数及其当前设置。

让我们来分析一下你可能会看到的一些常见参数:

  • kernel.domainname:系统的域名。
  • net.ipv4.ip_forward:控制 IPv4 的 IP 转发(路由)。值为 0 时禁用转发,值为 1 时启用转发。
  • vm.swappiness:定义内核将内存页面交换到磁盘的积极程度。值越低,交换越少;值越高,交换越多。
  • vm.vfs_cache_pressure:控制内核回收用于缓存目录和 inode 信息的内存的积极程度。

你可以使用 grep 过滤输出并查找特定设置。例如,要查找 vm.swappiness 的值,可以使用以下命令:

sudo sysctl -a | grep vm.swappiness

这将仅显示包含 vm.swappiness 的行:

vm.swappiness = 60

sysctl -a 命令是了解 Linux 系统当前配置的重要工具。它允许你检查广泛的内核参数,并确定可能需要优化的区域。

在后续步骤中,我们将探索如何使用 sysctl 修改这些设置,以及 tuned 配置文件如何自动执行此过程。

使用 cat /etc/tuned 检查 tuned 配置

在这一步中,我们将检查位于 /etc/tuned 目录下的 tuned 配置文件。这些文件定义了 tuned 用于优化系统性能的各种配置文件。

tuned 配置按配置文件组织,每个配置文件由 /etc/tuned 内的一个子目录表示。每个配置文件目录都包含一个 tuned.conf 文件,该文件指定了该配置文件的调优参数。

要查看 /etc/tuned 目录的内容,请打开终端并输入以下命令:

ls /etc/tuned

此命令将列出可用的 tuned 配置文件。你应该会看到类似以下的输出:

acceleratorcard  desktop  latency-performance  network-latency  network-throughput  powersave  profile_includes  README  throughput-performance  virtual-guest  virtual-host

这些是 tuned 可以激活的不同配置文件的名称。每个配置文件都是为特定类型的工作负载或环境设计的。

现在,让我们检查 virtual-guest 配置文件的配置文件,我们在第一步中确定它是激活的配置文件。要查看 virtual-guest 配置文件的 tuned.conf 文件的内容,请使用以下命令:

cat /etc/tuned/virtual-guest/tuned.conf

此命令将显示 tuned.conf 文件的内容。输出将是一个包含各种配置设置的文本文件。该文件分为多个部分,每个部分定义了一组调优参数。

[main]
include = virtual-server

[sysctl]
vm.swappiness = 30

[vm]
transparent_hugepages = never

让我们来分析一下关键部分:

  • [main]:此部分定义了配置文件的常规设置,例如要包含的其他配置文件。在这种情况下,它包含 virtual-server 配置文件,这意味着它也继承了该配置文件的设置。
  • [sysctl]:此部分定义了在激活配置文件时要设置的 sysctl 参数。在这个例子中,它将 vm.swappiness 设置为 30。这减少了系统将内存交换到磁盘的倾向,从而可以提高虚拟化环境中的性能。
  • [vm]:此部分定义了虚拟内存设置。在这个例子中,它禁用了透明大页,这可以在某些虚拟化环境中改善内存管理。

你可以探索其他配置文件的配置文件,看看它们有何不同。例如,throughput-performance 配置文件可能会优先考虑磁盘 I/O 性能,而 powersave 配置文件可能会专注于降低功耗。

通过检查 tuned 配置文件,你可以更深入地了解 tuned 如何针对不同的工作负载优化你的系统。这些知识对于解决性能问题和根据特定需求定制系统非常有价值。

总结

在本次实验中,我们学习了如何使用 tuned-adm 命令行工具检查 Linux 中当前激活的性能配置文件。我们使用 sudo tuned-adm active 来确定激活的配置文件,该配置文件会针对特定工作负载对系统进行优化。输出会显示激活的配置文件名称,如 virtual-guest,或者表明没有激活的配置文件。

此外,我们还探索了 sudo tuned-adm status 命令,以获取更详细的状态报告,包括激活的配置文件、已应用的调优插件以及任何警告或错误信息。这能让你全面了解 tuned 守护进程的配置和运行情况。