linux中如何查看内存的命令
linux中如何查看内存的命令详细介绍
在 Linux 系统中,查看内存使用情况有多个常用命令,以下是最常用的几种:
1.
free:快速查看内存总体使用情况
free 命令用于显示系统内存(物理内存和交换空间)的使用情况,支持多种参数调整显示格式。
常用参数:
-h:以人类可读的格式显示(如 KB、MB、GB),最常用;-s <秒数>:每隔指定秒数刷新显示(如free -s 5每 5 秒刷新一次);-t:显示内存总和(物理内存 + 交换空间的总计)。
示例:
bash
输出类似:
plaintext
total used free shared buff/cache availableMem: 7.7Gi 1.2Gi 4.5Gi 0.0Ki 2.0Gi 6.0Gi
Swap: 2.0Gi 0.0Ki 2.0Gi
Mem行是物理内存统计:total:总内存大小;used:已使用内存(不包含缓冲 / 缓存);free:空闲内存;buff/cache:缓冲(Buffer)和缓存(Cache)占用的内存(这部分内存可被回收);available:可用内存(程序可直接使用的内存)。
2.
top:动态监控内存(及其他系统资源)
top 是一个实时动态监控工具,可显示进程对内存、CPU 的占用情况,按 q 可退出。
关键输出(内存相关部分):
plaintext
top - 14:23:45 up 10 days, 2:12, 2 users, load average: 0.00, 0.01, 0.05Tasks: 152 total, 1 running, 151 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.3 us, 0.3 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 7987.0 total, 4607.4 free, 122.8 used, 3256.8 buff/cache
MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 7620.6 avail Mem
MiB Mem行显示物理内存:total(总)、free(空闲)、used(已使用)、buff/cache(缓冲 / 缓存);MiB Swap行显示交换空间(Swap)的使用情况。
3.
htop:更友好的交互式监控工具(需安装)
htop 是 top 的增强版,界面更直观,支持鼠标操作,且能更清晰地展示内存占用。
安装(以 Ubuntu/Debian 为例):
bash
运行:直接输入 htop 即可启动,界面会显示内存(Mem)和交换空间(Swap)的实时使用进度条,以及进程的内存占用排序。
4.
vmstat:查看内存、IO、CPU 等综合统计
vmstat(Virtual Memory Statistics)用于显示虚拟内存、进程、IO、CPU 等的统计信息,适合分析系统整体性能。
常用参数:
-s:以表格形式显示内存相关统计(如总内存、已用内存、交换空间等);<间隔秒数> <次数>:动态刷新(如vmstat 5 3每 5 秒刷新一次,共 3 次)。
示例:
bash
输出类似:
plaintext
8183552 K total memory1257864 K used memory
472872 K active memory
527484 K inactive memory
4613268 K free memory
3212416 K buffer memory
3207760 K swap cache
2097148 K total swap
0 K used swap
2097148 K free swap
5.
cat /proc/meminfo:直接读取内核内存信息
/proc/meminfo 是 Linux 内核提供的内存信息文件,包含最详细的内存统计(如内存类型、缓存大小、交换空间等)。
示例:
bash
/proc/meminfo
输出关键字段:
plaintext
MemTotal: 8183552 kB # 总物理内存MemFree: 4613268 kB # 空闲物理内存
MemAvailable: 7802148 kB # 可用内存(程序可直接使用)
Buffers: 3212416 kB # 块设备缓冲内存
Cached: 3207760 kB # 文件缓存内存
SwapTotal: 2097148 kB # 总交换空间
SwapFree: 2097148 kB # 空闲交换空间
总结:
- 快速查看内存总体使用:
free -h; - 动态监控进程内存占用:
top或htop; - 详细内存统计分析:
cat /proc/meminfo或vmstat。