Linux 系统查看内存命令指南292
在 Linux 系统中,实时监控和管理内存至关重要。通过使用各种命令,系统管理员可以深入了解内存使用情况,诊断问题并优化性能。以下是查看 Linux 系统内存的关键命令:
1. free
free 命令提供有关系统内存使用情况的概况,包括已用内存、空闲内存、缓冲区和缓存。
$ free -m
总计 已用 空闲 共享 缓冲 缓存
Mem: 16 12 4 0 0 1
-/+ buffers/cache: 11 5
2. vmstat
vmstat 命令显示有关虚拟内存、页面换入和换出以及 CPU 使用情况的详细统计信息。
$ vmstat 1
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 2148 11284 57 2236 0 0 1 3 5 11 1 10 79 1 0
3. top
top 命令提供有关正在运行进程的实时信息,包括它们使用的内存量。
$ top -o %MEM
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
9287 root 20 0 316392 260812 22236 S 5.0 1.2 23:55.56 top
9796 root 20 0 1130240 202012 41844 S 3.0 0.9 1:02.67 vsftpd
8787 mysql 20 0 7255712 480820 18708 S 0.0 2.8 1:19.89 mysqld
4. ps
ps 命令列出正在运行的进程,并提供有关其内存使用的信息。
$ ps -eo pid,user,cmd,rss,pcpu,pmem
PID USER CMD RSS %CPU %MEM
9287 root top 261M 5.0 1.2%
9796 root vsftpd 202M 3.0 0.9%
8787 mysql mysqld 481M 0.0 2.8%
5. grep
grep 命令可以过滤命令输出,仅显示与特定关键词匹配的行。
$ free -m | grep Mem
总计 已用 空闲 共享 缓冲 缓存
Mem: 16 12 4 0 0 1
6. sar
sar 命令收集和报告系统活动信息,包括内存使用情况。
$ sar -r 1 3
Average Memory info:
15:01:41 PM kbmemfree kbmemused %memused kbbuffers kbcached
15:01:42 PM 4032596 1220176 23.15 132,112 427,296
15:01:43 PM 4020472 1232420 23.34 132,656 427,688
7. dmesg
dmesg 命令显示内核缓冲区的日志消息,可以用于识别与内存相关的错误或警告。
$ dmesg | grep memory
[ 0.000000] Memory: 16384K/16384K available (1 pages at 4096K)
[ 0.000000] [mem 0x1000-0x1000000]
[ 0.000000] [mem 0xd000000-0x10000000]
8. mtr
mtr 命令是用于网络故障排除的工具,但它也可以显示有关网络应用程序使用的内存量的信息。
$ mtr
Host: (172.217.19.70)
...
Send rate: 11404 packets/sec
Recv rate: 11400 packets/sec
Loss rate: 0.03%
Sent: 114298, Rcvd: 114284, Loss: 14
SntBytes: 119329664, RcvBytes: 76881032
Total bytes: 196210696, Speed: 1.78 Gbps
Max speed: 1.78 Gbps
Min speed: 1.78 Gbps
Application: 38752 bytes in, 34392 bytes out
9. meminfo
meminfo 命令从 /proc/meminfo 文件中提取有关内存使用情况的详细统计信息。
$ cat /proc/meminfo
MemTotal: 16384 kB
MemFree: 4032 kB
MemAvailable: 12200 kB
Buffers: 132 kB
Cached: 427 kB
10. swapon
swapon 命令显示系统中启用的所有交换分区和文件。
$ swapon -s
Filename Type Size Used Priority
/swapfile file 1024M 0B -2
11. lshw
lshw 命令提供有关系统硬件的信息,包括已安装的内存量。
$ lshw -class memory
*-memory
description: System memory
physical id: 0
size: 16GiB
12. vm_stat
vm_stat 命令是 vmstat 命令的图形版本,提供有关虚拟内存和 CPU 使用情况的可视化表示。
$ vm_stat 1
k total free used buff cache
swap 2 512 512 0 0 0
slab 0 344 344 0 0 0
page 1 16384 16372 12 0 12
vmap 0 64 64 0 0 0
anon 2 5324 1716 3608 0 0
file 0 4096 4096 0 0 0
shmem 0 32 32 0 0 0
sock 0 28 28 0 0 0
0 26216 23176 3040 0 3040
13. smem
smem 命令提供有关系统内存的详细统计信息,包括页面映射和物理内存分配。
$ smem -m
Total amount of memory: 16384 kB
Amount of free memory: 5404 kB
Amount of memory in buffers: 132 kB
Amount of cached memory: 427 kB
Amount of swap space: 1024 MB
Amount of free swap space: 1024 MB
14. numastat
numastat 命令显示有关非统一内存访问 (NUMA) 系统中的内存使用情况和节点分配的信息。
$ numastat
Node 0
numa_hit numa_miss numa_foreign interleave_hit interleave_miss local_node other_node
570224160 585075576 12297357
2024-11-23
新文章

iOS系统检测失败的根本原因及排查方法

Android音量系统深度解析:架构、实现与调优

iOS系统WiFi灰色:诊断与修复指南(操作系统层面分析)

iOS 14.7及后续版本的操作系统内核与安全机制演进

Windows 12 系统安装:深入解读与疑难解答

主流Linux发行版深度剖析:选择适合您的最佳系统

Android系统属性设置阻塞及解决方法

iOS 15系统架构与核心技术深度解析

Android 7.1 Nougat (API 级别 25): 深入解析操作系统内核及特性

iOS 12系统兼容性深度解析:硬件、软件及性能影响
热门文章

iOS 系统的局限性

Linux USB 设备文件系统

Mac OS 9:革命性操作系统的深度剖析

华为鸿蒙操作系统:业界领先的分布式操作系统

**三星 One UI 与华为 HarmonyOS 操作系统:详尽对比**

macOS 直接安装新系统,保留原有数据

Windows系统精简指南:优化性能和提高效率
![macOS 系统语言更改指南 [专家详解]](https://cdn.shapao.cn/1/1/f6cabc75abf1ff05.png)
macOS 系统语言更改指南 [专家详解]

iOS 操作系统:移动领域的先驱
