, cat /proc/cpuinfo,
`,,2. 查看内存信息:,
`, free -h,
“,,这些命令将提供关于系统 CPU 和内存的详细信息。在Linux系统中,查看CPU和内存的使用情况是系统管理和性能调优的重要任务,本文将详细介绍如何使用命令行工具来获取这些信息,包括命令的使用方法、输出解释以及一些常见问题的解决方案。
查看CPU信息
1. top命令
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况。
运行top命令:
top
输出解释:
第一行(top): 显示系统当前时刻、系统启动后到现在的运作时间、当前登录到系统的用户数、系统负载平均值。
第二行(Tasks): 显示系统进程总数、当前运行中的进程数、等待状态中的进程数、被停止的系统进程数、僵尸进程数。
第三行(Cpus): 显示不同状态下的CPU使用率,包括用户空间、内核空间、改变过优先级的进程、空闲CPU百分比等。
第四行(Mem): 显示物理内存总量、使用的物理内存总量、空闲内存总量、用作内核缓存的内存量等。
第五行(Swap): 显示交换分区的使用情况。
内部命令:
s
:改变画面更新频率。
l
:关闭或开启第一部分第一行 top 信息的表示。
t
:关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示。
m
:关闭或开启第一部分第四行 Mem 和第五行 Swap 信息的表示。
N
:以 PID 的大小的顺序排列表示进程列表。
P
:以 CPU 占用率大小的顺序排列进程列表。
M
:以内存占用率大小的顺序排列进程列表。
h
:显示帮助。
n
:设置在进程列表所显示进程的数量。
q
:退出 top。
2. ps命令
ps命令用于报告当前系统的进程状态。
运行ps命令:
ps aux
输出解释:
F: 程序的旗标 (flag)。
4: 使用者为 super user。
S: 程序的状态 (STAT)。
PID: 程序的 ID。
C: CPU 使用的资源百分比。
PRI: 这个是 Priority (优先执行序) 的缩写。
NI: 这个是 Nice 值。
ADDR: 这个 kernel function,指出该程序在内存的那个部分,如果是个 running # 的程序,一般就是『 』。
SZ: 使用掉的内存大小。
WCHAN: 目前这个程序是否正在运作当中,若为 表示正在运作。
TTY: 登入者的终端机位置。
TIME: 使用掉的 CPU 时间。
CMD: 所下达的指令。
3. /proc/cpuinfo文件
通过查看/proc/cpuinfo文件可以获取CPU的详细信息。
运行命令:
cat /proc/cpuinfo | grep "model name" | uniq
输出解释:
processor: 系统中逻辑处理核的编号。
vendor_id: CPU制造商。
cpu family: CPU系列。
model: CPU型号。
model name: CPU名称。
stepping: CPU步进。
microcode: CPU微码。
cpu MHz: CPU频率。
cache size: CPU缓存大小。
physical id: CPU物理编号。
siblings: 同一个物理处理器上的线程数。
core id: CPU核心编号。
cpu cores: CPU核心数量。
apicid: CPU的APIC ID号。
initial apicid: 初始 APIC ID 号。
flags: CPU支持的功能。
bugs: CPU错误列表。
bogomips: CPU速度评估分数。
clflush size: CPU缓存刷新大小。
查看内存信息
1. free命令
free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区。
运行free命令:
free -h
输出解释:
total: 总计物理内存的大小。
used: 已使用多大。
free: 可用有多少。
Shared: 多个进程共享的内存总额。
Buffers/cached: 磁盘缓存的大小。
available: 应用程序可以使用的内存总量。
2. /proc/meminfo文件
通过查看/proc/meminfo文件可以获取内存的详细信息。
运行命令:
cat /proc/meminfo | grep MemTotal
输出解释:
MemTotal: 总物理内存大小。
MemFree: 空闲物理内存大小。
Buffers: 用于块设备的数据缓存大小。
Cached: 用于页面缓存和slab英克的大小。
MemAvailable: 应用程序可以使用的内存总量。
SwapTotal: 交换分区总大小。
SwapFree: 空闲交换分区大小。
常见问题解答(FAQ)
Q1: top命令中如何按CPU使用率排序?
A1: 在top命令运行界面中,按P
键即可按CPU使用率排序。
Q2: 如何查看某个进程的内存使用情况?
A2: 使用ps命令结合grep命令,例如要查看nginx进程的内存使用情况,可以使用以下命令:
ps aux | grep nginx | grep -v grep
然后查看RES列的值即为物理内存使用量。
Q3: 如何查看系统所有进程的总内存使用情况?
A3: 可以通过编写一个简单的脚本来计算所有进程的内存使用总和,创建一个名为mem_per.sh
的脚本:
#!/bin/bash ps aux | awk '{if (NR>1){print $6}}' > /opt/mem_list awk '{MEM_PER+=$1}END{print MEM_PER}' /opt/mem_list
给脚本执行权限并运行:
chmod +x mem_per.sh ./mem_per.sh
输出结果即为所有进程的内存使用总和。
在Linux系统中,通过top、ps、free等命令可以方便地查看CPU和内存的使用情况,top命令提供了实时的系统资源监控,ps命令用于查看进程状态,free命令则显示了内存的使用情况,通过查看/proc/cpuinfo和/proc/meminfo文件可以获取更详细的CPU和内存信息,掌握这些工具对于系统管理员来说至关重要,可以帮助他们更好地了解系统性能并进行优化。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1266454.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复