Linux 查看内存命令

目录

[1. free](#1. free)

[2. vmstat](#2. vmstat)

[3. top](#3. top)

[4. htop](#4. htop)

[5. /proc/meminfo](#5. /proc/meminfo)


1. free

free命令是最常用的查看内存使用情况的命令。它显示系统的总内存、已使用内存、空闲内存和交换内存的总量。

复制代码
free -h
  • -h 选项:以易读的格式(如GB、MB)显示内存大小。

输出示例:

复制代码
              total        used        free      shared  buff/cache   available
Mem:           15Gi       4.7Gi       4.1Gi       288Mi       6.6Gi       9.9Gi
Swap:          2.0Gi          0B       2.0Gi
  • total:总内存。
  • used:已使用的内存。
  • free:完全空闲的内存。
  • shared:被多个进程共享的内存。
  • buff/cache:被缓冲区和缓存使用的内存。
  • available:估算的可用于启动新应用程序的内存,而不交换内存。

2. vmstat

vmstat命令报告关于进程、内存、分页、块IO、中断和CPU活动的信息。

复制代码
vmstat -s

输出示例:

复制代码
      16384000 total memory
       4915200 used memory
       1024000 active memory
       2048000 inactive memory
       9437184 free memory
        524288 buffer memory
       2097152 swap cache
      2097152 total swap
            0 used swap
      2097152 free swap
  • total memory:总内存。
  • used memory:已使用的内存。
  • free memory:空闲内存。
  • buffer memory:缓冲区使用的内存。
  • swap cache:交换缓存使用的内存。
  • total swap:总交换空间。
  • used swap:已使用的交换空间。
  • free swap:空闲的交换空间。

3. top

top命令提供了一个动态更新的实时视图,显示系统中资源使用最多的进程。它也可以用来查看内存使用情况。

复制代码
top

top命令的输出中,可以看到以下内存相关的信息:

  • Mem:显示总内存、已使用内存、空闲内存和缓冲区使用的内存。
  • Swap:显示总交换空间、已使用交换空间和空闲交换空间。

4. htop

htop是一个交互式的进程查看器,比top更直观。它提供了更多的信息和更好的视觉效果。

复制代码
htop

htop的界面中,可以看到内存和交换空间的使用情况,以及每个进程的内存使用量。

5. /proc/meminfo

/proc/meminfo文件包含了系统内存的详细信息。可以通过cat命令查看其内容。

复制代码
cat /proc/meminfo

输出示例:

复制代码
MemTotal:       16384000 kB
MemFree:         9437184 kB
MemAvailable:   10485760 kB
Buffers:          524288 kB
Cached:          2097152 kB
SwapCached:      2097152 kB
Active:          1024000 kB
Inactive:        2048000 kB
Active(anon):     512000 kB
Inactive(anon):  1024000 kB
Active(file):     512000 kB
Inactive(file):  1024000 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:       2097152 kB
SwapFree:        2097152 kB
Dirty:                64 kB
Writeback:             0 kB
AnonPages:        512000 kB
Mapped:           204800 kB
Shmem:            288000 kB
Slab:             204800 kB
SReclaimable:     102400 kB
SUnreclaim:       102400 kB
KernelStack:       64000 kB
PageTables:        64000 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     9288128 kB
Committed_AS:    2048000 kB
VmallocTotal:   34359738367 kB
VmallocUsed:           0 kB
VmallocChunk:          0 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
CmaTotal:               0 kB
CmaFree:                0 kB
HugePages_Total:        0
HugePages_Free:         0
HugePages_Rsvd:         0
HugePages_Surp:         0
Hugepagesize:       2048 kB
DirectMap4k:      102400 kB
DirectMap2M:     8388608 kB
  • MemTotal:总内存。
  • MemFree:空闲内存。
  • MemAvailable:估算的可用于启动新应用程序的内存。
  • Buffers:缓冲区使用的内存。
  • Cached:缓存使用的内存。
  • SwapTotal:总交换空间。
  • SwapFree:空闲的交换空间。
相关推荐
xmtxz5 分钟前
计算机网络基础课程学习心得:从理论抽象到硬核实战的进阶之路
运维·学习
凡人叶枫17 分钟前
Effective C++ 条款17:以独立语句将 newed 对象置入智能指针
java·linux·开发语言·c++·算法
RisunJan40 分钟前
Linux命令-pgrep (通过进程名查找进程 ID)
linux·运维
回忆2012初秋1 小时前
【Nginx】优雅地走进高性能 Web 服务器世界(1)
服务器·前端·nginx
信创工程师-小杨1 小时前
Linux内网环境如何解决依赖的问题
linux·运维·服务器
设计师小聂!1 小时前
宝塔 Linux 面板保姆级教程
linux·mysql·开源·运维开发
不吃土豆的马铃薯2 小时前
C++ 高性能网络缓冲区 Buffer 源码解析
linux·服务器·开发语言·网络·c++
java知路2 小时前
linux yum 下载docker安装包及依赖安装包,并离线安装
linux·运维·docker
小小龙学IT2 小时前
Go 泛型深度解析:从设计哲学到工程实践
服务器·数据库·golang
2601_955505252 小时前
自然人身份确权可信基础设施赋能 DID 身份合规
运维·金融·区块链·健康医疗·智能硬件·教育电商·政务