14.3. 用于审计的工具
Red Hat Enterprise Linux 8 提供用于执行系统审核和分析的工具。如果您想要验证已经发现的内容或需要某些部分的更深入的信息,则它们中的大多数都可以用作补充的信息源。
其中许多工具也用于性能调优,其中包括:
powertop
-
它可识别频繁绕过 CPU 的内核和用户空间应用程序的特定组件。以 root 用户身份使用
powertop
命令启动 PowerTop 工具和powertop --calibrate
来布线电源估算引擎。有关 PowerTop 的更多信息,请参阅 使用 PowerTOP 管理功耗。 Diskdevstat 和 netdevstat
它们是 SystemTap 工具,可收集有关系统中所有应用程序的磁盘活动和网络活动的详细信息。使用这些工具收集的统计数据,您可以识别与许多小 I/O 操作(而非更小且更大型的操作)的强大应用程序。以 root 用户身份使用
dnf install tuned-utils-systemtap kernel-debuginfo
命令,安装diskdevstat
和netdevstat
工具。要查看磁盘和网络活动的详细信息,请使用:
# diskdevstat PID UID DEV WRITE_CNT WRITE_MIN WRITE_MAX WRITE_AVG READ_CNT READ_MIN READ_MAX READ_AVG COMMAND 3575 1000 dm-2 59 0.000 0.365 0.006 5 0.000 0.000 0.000 mozStorage #5 3575 1000 dm-2 7 0.000 0.000 0.000 0 0.000 0.000 0.000 localStorage DB [...] # netdevstat PID UID DEV XMIT_CNT XMIT_MIN XMIT_MAX XMIT_AVG RECV_CNT RECV_MIN RECV_MAX RECV_AVG COMMAND 3572 991 enp0s31f6 40 0.000 0.882 0.108 0 0.000 0.000 0.000 openvpn 3575 1000 enp0s31f6 27 0.000 1.363 0.160 0 0.000 0.000 0.000 Socket Thread [...]
使用这些命令,您可以指定三个参数:
update_interval
、total_duration
和display_histogram
。TuneD
-
它是一个基于配置文件的系统调整工具,它使用
udev
设备管理器监控连接的设备,并支持系统设置的静态和动态调优。您可以使用tuned-adm recommend
命令确定红帽推荐的配置文件作为最适合特定产品的配置文件。如需有关 TuneD 的更多信息,请参阅 开始使用 TuneD 和 自定义 TuneD 配置文件。使用powertop2tuned 实用程序
,您可以从PowerTOP
推荐创建自定义 TuneD 配置文件。有关powertop2tuned
工具的详情,请参考 优化功耗。 虚拟内存统计信息 (vmstat)
它由
procps-ng
软件包提供。使用这个工具,您可以查看进程、内存、分页、块 I/O、陷阱和 CPU 活动的详细信息。要查看此信息,请使用:
$ vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 1 0 0 5805576 380856 4852848 0 0 119 73 814 640 2 2 96 0 0
使用
vmstat -a
命令,可以显示活动和不活跃的内存。有关其他vmstat
选项的更多信息,请参阅您系统上的vmstat
手册页。iostat
它由
sysstat
软件包提供。此工具与vmstat
类似,但只适用于监控块设备上的 I/O。它还提供了更详细的输出和统计数据。要监控系统 I/O,请使用:
$ iostat avg-cpu: %user %nice %system %iowait %steal %idle 2.05 0.46 1.55 0.26 0.00 95.67 Device tps kB_read/s kB_wrtn/s kB_read kB_wrtn nvme0n1 53.54 899.48 616.99 3445229 2363196 dm-0 42.84 753.72 238.71 2886921 914296 dm-1 0.03 0.60 0.00 2292 0 dm-2 24.15 143.12 379.80 548193 1454712
blktrace
它提供有关在 I/O 子系统中花费时间的详细信息。
要以人类可读格式查看此信息,请使用:
# blktrace -d /dev/dm-0 -o - | blkparse -i - 253,0 1 1 0.000000000 17694 Q W 76423384 + 8 [kworker/u16:1] 253,0 2 1 0.001926913 0 C W 76423384 + 8 [0] [...]
第一列 253,0 是设备主和次的元组。第二列 1 提供了有关 CPU 的信息,后跟用于发出 IO 进程的进程的时间戳和 PID 的列。
第六个列 Q 显示事件类型,第 7 列,W 代表写入操作,第 8 列为 76423384,是块号,+ 8 是请求的块的数量。
最后一个字段 [kworker/u16:1] 是进程名称。
默认情况下,
blktrace
命令会永久运行,直到进程被明确终止。使用-w
选项指定运行时持续时间。turbostat
它由
kernel-tools
软件包提供。它报告了 x86-64 处理器上的处理器拓扑、频率、空闲的电源状态统计、温度和功耗。要查看此摘要,请使用:
# turbostat CPUID(0): GenuineIntel 0x16 CPUID levels; 0x80000008 xlevels; family:model:stepping 0x6:8e:a (6:142:10) CPUID(1): SSE3 MONITOR SMX EIST TM2 TSC MSR ACPI-TM HT TM CPUID(6): APERF, TURBO, DTS, PTM, HWP, HWPnotify, HWPwindow, HWPepp, No-HWPpkg, EPB [...]
默认情况下,
turbostat
显示整个屏幕的计数器结果摘要,每 5 秒显示计数器结果。使用-i
选项指定计数器结果之间的不同周期,例如,执行turbostat -i 10
会每 10 秒打印结果。Turbostat 在识别电源使用或空闲时间方面效率低下的服务器也很有用。它还有助于识别系统中发生的系统管理中断 (SMI) 的速度。它还可用于验证电源管理调整的影响。
cpupower
IT 是用于检查和调优处理器相关功能的工具集合。在
cpupower
命令中使用frequency-info
,frequency-set
,idle-info
,idle-set
,set
,info
, 和monitor
选项来显示和设置处理器相关的值。例如,要查看可用的 cpufreq 管理器,请使用:
$ cpupower frequency-info --governors analyzing CPU 0: available cpufreq governors: performance powersave
有关
cpupower
的更多信息,请参阅查看 CPU 相关信息。GNOME Power Manager
- 它是作为 GNOME 桌面环境的一部分安装的守护进程。GNOME Power Manager 通知您系统的电源状态变化,例如,从电池改为 AC 电源。它还会报告电池状态,并在电池电源较低时提醒您。
其他资源
-
您系统上的
powertop (1)
,diskdevstat (8)
,netdevstat (8)
,tuned (8)
,vmstat (8)
,iostat (1)
,blktrace (8)
,blkparse (8)
和turbostat (8)
手册页 -
您系统上的
cpupower (1)
,cpupower-set (1)
,cpupower-info (1)
,cpupower-idle (1)
,cpupower-frequency-set (1)
,cpupower-frequency-info (1)
和cpupower-monitor (1)
手册页