如何检查Linux内存使用情况?

Linux操作系统管理和使用不同的系统资源。这个 记忆 皇家音乐学院 是最重要的系统资源之一,每个正在运行的进程、命令、服务、作业都需要并使用一些内存。因此,一个典型的系统有大量的进程和服务,它使用和管理大量的内存。典型的系统管理员应该监视和管理Linux服务器的内存使用情况。有些应用程序可能会在特定的时间段内使用大量内存甚至不存在的内存。希望Linux能够提供很多不同的方法和命令来检查和监视内存/RAM的使用情况。ram的使用情况可以通过命令、文件或GUI工具进行检查。

null

最高指挥部

这个 最高指挥部 是用于监视和检查Linux系统资源的最常用命令。大多数Linux发行版都默认安装top命令,如Ubuntu、Debian、Mint、Kali、Fedora、CentOS、RHEL、SuSe等。它提供有关CPU、内存、磁盘使用情况及其详细信息。使用top命令可以很容易地检查内存使用情况。top命令是一个交互式命令,用于提供和刷新最新信息。top命令可以如下启动。

top
图片[1]-如何检查Linux内存使用情况?-yiteyi-C++库

从截图上我们可以看到 %%记忆 列显示内存使用百分比。例如,如果我们有10GB内存%%4,5内存使用量约为450MB内存。top命令以交互方式更新此内存信息,并且可能会随着时间的推移而发生变化,值会越来越低。

按m键可以根据内存使用情况对进程进行排序。或者,top命令可以用 -o%%内存 选项,该选项默认情况下根据进程的内存使用情况对进程进行排序。

top -o %MEM

/proc/meminfo文件

Linux通过/proc/meminfo文件提供与内存相关的信息。该文件为所有与内存相关的信息提供了非常原始的信息。Linux内核提供了这些信息,大多数命令都使用这些信息。/proc/meminfo是一个基于文本的文件,可以用文本编辑器读取,也可以用cat命令轻松地打印到bashshell中。

cat /proc/meminfo
MemTotal:        1395848 kB MemFree:          162336 kB MemAvailable:     220464 kB Buffers:           10428 kB Cached:           133860 kB SwapCached:        26968 kB Active:           345624 kB Inactive:         321896 kB Active(anon):     254744 kB Inactive(anon):   270296 kB Active(file):      90880 kB Inactive(file):    51600 kB Unevictable:          16 kB Mlocked:              16 kB SwapTotal:       2097148 kB SwapFree:         521984 kB Dirty:                 0 kB Writeback:             0 kB AnonPages:        496536 kB Mapped:            71848 kB Shmem:              1764 kB KReclaimable:      89116 kB Slab:             246712 kB SReclaimable:      89116 kB SUnreclaim:       157596 kB KernelStack:       12064 kB PageTables:        18612 kB NFS_Unstable:          0 kB Bounce:                0 kB WritebackTmp:          0 kB CommitLimit:     2795072 kB Committed_AS:    5245848 kB VmallocTotal:   34359738367 kB VmallocUsed:       39732 kB VmallocChunk:          0 kB Percpu:           105472 kB HardwareCorrupted:     0 kB AnonHugePages:         0 kB ShmemHugePages:        0 kB ShmemPmdMapped:        0 kB FileHugePages:         0 kB FilePmdMapped:         0 kB HugePages_Total:       0 HugePages_Free:        0 HugePages_Rsvd:        0 HugePages_Surp:        0 Hugepagesize:       2048 kB Hugetlb:               0 kB DirectMap4k:      483200 kB DirectMap2M:      999424 kB DirectMap1G:           0 kB

从输出中我们可以看到,“cat/proc/meminfo”命令提供了大量关于内存的详细信息。

相关文章: Vim/Vi复印线

自由命令

这个 自由命令 也可用于检查和监视内存使用情况。与其他命令相比,它非常简单。free显示可用内存和已用内存的总量,以及包含缓冲区和缓存信息的交换内存。free命令从/proc/meminfo文件收集信息。

free
          total    used        free   shared  buff/cache   available Mem:        1395848     1000480       98904        1780      296464             219948 Swap:       2097148     1572348      524800

我们可以看到实际的RAM或内存信息被打印在Mem行中,交换信息被打印在第二行中。

默认情况下,free命令以字节形式检查内存使用情况,但我们可以使用 -米 选项如下。兆字节格式更容易阅读和理解。

free -m
图片[2]-如何检查Linux内存使用情况?-yiteyi-C++库

vmstat命令

vmstat命令用于报告有关进程、内存、分页、磁盘等的信息。vmstat命令还可用于检查和监视内存使用情况。如果vmstat在没有选项的情况下执行,则打印系统开始时的平均内存使用量。

vmstat
图片[3]-如何检查Linux内存使用情况?-yiteyi-C++库
vmstat命令

从输出中我们可以看到关于内存使用的详细信息,如交换、释放、缓冲和缓存。

  • swpd公司 :使用的虚拟内存量。
  • 自由的 :空闲内存量。
  • 浅黄色 :用作缓冲区的内存量。
  • 隐藏物 :用作缓存的内存量。
  • 输入 :非活动内存量(-a选项)
  • 积极的 :活动内存量(-a选项)

或者,可以通过指定间隔以交互方式运行vmstat。此交互模式显示并更新每个平均间隔的信息。在下面的示例中,vmstat以交互方式运行,并每5秒更新一次内存使用信息。

vmstat 5
图片[4]-如何检查Linux内存使用情况?-yiteyi-C++库

htop命令

htop是top命令的替代命令,用于检查和监视内存使用情况。htop提供了更吸引人的显示器,这些显示器用一些基本的图形组件着色。内存使用率以数字的形式显示,并以命令行界面或bash的bard图形显示。但是htop命令在默认情况下没有安装,可以像下面那样安装。

相关文章: “bash:wget command not found”错误及解决方法

Ubuntu、Debian、Mint、Kali:

sudo apt install htop

Fedora、CentOS、RHEL:

sudo dnf install htop
htop
图片[5]-如何检查Linux内存使用情况?-yiteyi-C++库

nmon命令

nmon命令是另一个带有内存使用图形显示的命令。它提供内存使用以及

Ubuntu、Debian、Mint、Kali:

sudo apt install nmon

Fedora、CentOS、RHEL:

sudo yum install nmon

要启动nmon,请首先运行nmon命令。

nmon 

以默认nmon屏幕类型显示和检查内存相关信息 m键 启动记忆屏幕。

m
图片[6]-如何检查Linux内存使用情况?-yiteyi-C++库
使用nmon检查内存使用情况

资源监视器GUI

每个Linux桌面环境都提供一些GUI或桌面工具来显示、检查和监视资源使用情况。可以通过这些工具检查内存。即使这些工具也不太详细,它们提供了基于进程的内存使用情况以及根据内存使用情况对这些进程进行排序的能力。这些工具通常被称为 系统监视器 “并且可以通过 显示应用程序 .

图片[7]-如何检查Linux内存使用情况?-yiteyi-C++库
资源监视器GUI

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享