Linux 查看CPU内存信息,这几条命令够用了

群里经常有人问怎么看CPU、内存,其实就那么几条命令,记牢了走遍天下。直接上干货。

CPU信息

1. lscpu

最直观,没有之一。

lscpu

输出关键字段:
– CPU(s): 总逻辑核数
– Thread(s) per core: 每核线程数(超线程)
– Core(s) per socket: 每颗物理CPU核数
– Socket(s): 物理CPU颗数
– Model name: 具体型号

2. cat /proc/cpuinfo

更底层,适合写脚本。

cat /proc/cpuinfo | grep "processor" | wc -l  # 逻辑核数
cat /proc/cpuinfo | grep "cpu cores" | uniq     # 物理核数

3. 实时CPU负载

top -bn1 | grep "Cpu(s)"   # 一次快照
mpstat -P ALL 1 3          # 每核详细,需要sysstat包

内存信息

1. free -h

日常够用,-h是友好显示。

free -h

重点看:
– total: 总内存
– available: 可用内存(这才是真实可用的)
– swap: 交换分区使用情况

2. cat /proc/meminfo

详细到令人发指,适合排查内存泄漏。

cat /proc/meminfo | grep -E "MemTotal|MemFree|MemAvailable|Buffers|Cached"

3. 进程内存占用

ps aux --sort=-%mem | head -10   # 内存TOP10
top -o %MEM                      # top里按M排序

组合拳(实用场景)

快速判断是否超线程

# 逻辑核数 / 物理核数 = 2 就是超线程
echo "逻辑核: $(nproc), 物理核: $(lscpu | grep 'Core(s) per socket' | awk '{print $4}')"

内存到底够不够

# 真实可用内存 = available + swap可用
free -h | awk 'NR==2{print "可用内存: "$7}'

查看内存条物理信息

sudo dmidecode -t memory | grep -E "Size|Type|Speed|Manufacturer"

几个坑

  1. free命令里的”used”不要直接信。Linux会把空闲内存拿来做缓存,所以看available。
  2. /proc/cpuinfo里的processor编号是逻辑核,不是物理编号。
  3. 云服务器lscpu的Socket(s)可能是1,即使有多个核,虚拟化下通常只暴露一个socket。

速查表

需求 命令
CPU型号/核数 lscpu
实时CPU负载 top/mpstat
内存总量/可用 free -h
内存详细信息 cat /proc/meminfo
进程内存排序 ps aux –sort=-%mem
物理内存条信息 dmidecode -t memory

就这些,记不住就收藏,用多了自然就记住了。有问题群里喊。

📚 推荐资源

– 部分链接含推广返佣 –

🪐 加入「渗透实战安全圈」

每天分享渗透测试实战、挖洞技巧、漏洞分析、工具推荐

知识星球

https://t.zsxq.com/40MyD

💻 安全运维 / Linux运维 / 渗透测试 技术支持
业务需求可联系博客作者

By admin

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注