XuLaLa.Tech

首页客户端下载Windows 使用V2Ray 教程SSR 教程Clash 教程

Linux 中检查内存使用情况

2025.04.09

在对系统或应用程序卡顿或不当行为进行原因排除时,首先要检查的事情之一是系统内存使用情况。本文解释了如何使用几个不同的命令检查 Linux 中的 RAM 使用情况。

free命令

free 是检查 Linux 系统内存使用情况最常用的命令。它显示有关总内存、已用内存和可用内存的信息。通常,使用表示以人类可读格式打印输出free的选项调用:-h
free -h
total        used        free      shared  buff/cache   available
Mem:           3936        1087         252         130        2596        2427
Swap:             0           0           0

以下是每列的含义:

  • total – 应用程序可以使用的内存总量。
  • used – 使用的内存。计算如下:used = total - free - buffers - cache
  • free – 空闲/未使用的内存。
  • shared – 此列可以忽略;显示它只是为了向后兼容。
  • buff/cache – 内核缓冲区、页面缓存和平板使用的组合内存。如果应用程序需要,可以随时回收此内存。
  • available – 估计可用于启动新应用程序的内存,无需交换。
free命令打印物理内存和系统交换的信息 。

top命令

top是一个命令行实用程序,可显示有关正在运行的进程的实时信息。它还显示系统摘要,包括内存使用情况。要调用该命令,只需键入top
top

输出将如下所示:


输出的标题包括有关系统的总、空闲和已用物理和交换内存的信息。该%MEM列提供有关每个正在运行的进程的可用物理内存的已用份额的信息。

/proc/meminfo

检查 RAM 内存使用情况的最简单方法是显示/proc/meminfo虚拟文件的内容。此文件由freetopps 和其他系统信息命令使用。使用lesscat 查看/proc/meminfo文件内容:
cat /proc/meminfo

该文件包含大量有关系统内存和交换使用情况的信息:

MemTotal:        4030592 kB
MemFree:          401804 kB
MemAvailable:    2507504 kB
...
文件中的信息/proc/meminfo可以在 shell 脚本中解析和使用。

ps_mem脚本

ps_mem 是一个 Python 脚本,用于报告每个程序的 RAM 内存使用情况。它适用于 Python 2 和 3,并且可以安装pip
sudo pip3 install ps_mem
运行ps_mem需要管理员权限:
sudo ps_mem

输出将按升序包含每个正在运行的程序的内存使用情况:

 Private  +   Shared  =  RAM used   Program
...
11.9 MiB +  20.2 MiB =  32.1 MiB   nginx (4)
8.2 MiB +  42.4 MiB =  50.6 MiB   systemd-journald
55.8 MiB + 307.2 MiB = 363.0 MiB   php-fpm7.4 (6)
233.9 MiB + 234.0 MiB = 467.9 MiB   redis-server
578.2 MiB + 578.6 MiB =   1.1 GiB   mysqld
---------------------------------
2.2 GiB
=================================

当您想找出哪个正在运行的程序占用了大部分系统内存时,这个命令很有用。

© 2010-2022 XuLaLa 保留所有权利 本站由 WordPress 强力驱动
请求次数:69 次,加载用时:0.665 秒,内存占用:32.19 MB