菜鸟笔记
提升您的技术认知

5种检查可用内存的方法

例如,服务器主要在shell上工作,并且首先没有可用的UI。由于最重要的是要检查服务器上的内存资源,因此最好学习可以帮助我们进行服务器管理的相关命令。本文解释了使用以下5个命令来检查可用内存:

  • free命令
  • vmstat命令
  • /proc/meminfo命令
  • top命令
  • htop命令
  • 通过使用这些命令,您始终可以确保有足够的内存资源用于服务器上运行的非常重要的进程。例如,如果您正在运行Web服务器,则可以确保缺少资源不会降低网站访问速度,或者网站不会完全停止运行。

    我们在CentOS 7.5系统上运行了本文中提到的命令和过程,Ubuntu Linux上也一样。为了查看内存使用情况,我们使用的是Linux命令行,终端应用程序。您可以通过系统Dash打开终端。

    方法1:free命令

    由于free命令是最广泛使用的,毫无疑问是最有用的,我们首先会提到它的用法。此命令用于检查有关系统RAM使用情况的信息。以下是您将在终端中输入的命令:

    [root@linuxprobe ~]$ free -m
                       total        used        free      shared  buff/cache  available
    Mem:          1821        1034          78          3        708        523
    Swap:          2047          51        1996

    available列 表示可用内存。 Swap条目中used的列是 51,这意味着它使用了51M,空闲部分是1996M。

    方法2:vmstat命令

    要通过vmstat命令查看内存统计信息,可以按以下方式使用它:

    [root@linuxprobe ~]$ vmstat -s
          1865252 K total memory
          1063392 K used memory
          584000 K active memory
          703272 K inactive memory
            97844 K free memory
                0 K buffer memory
          704016 K swap cache
          2097148 K total swap
            53696 K used swap
          2043452 K free swap
            15894 non-nice user cpu ticks
            1683 nice user cpu ticks
            16806 system cpu ticks
          1674779 idle cpu ticks
            1359 IO-wait cpu ticks
                0 IRQ cpu ticks
            1758 softirq cpu ticks
                0 stolen cpu ticks
          5076596 pages paged in
          702716 pages paged out
            2139 pages swapped in
            14109 pages swapped out
          2046484 interrupts
          3070821 CPU context switches
      1544162333 boot time
            26018 forks

    s标签提供有关内存使用的详细统计信息。您可以在输出中查看可用内存和可用交换内存条目,指示系统中的可用内存。

    方法3:/proc/meminfo命令

    以下命令从/proc文件系统中提取与内存相关的信息。 这些文件包含有关系统和内核的动态信息,而不是真实的系统文件。这是用于打印内存信息的命令:

    [root@linuxprobe ~]$ cat /proc/meminfo

    此命令的输出类似于vmstat命令。 您可以轻松查看MemFree结果中的空闲内存和SwapFree结果中的可用交换内存。

    方法4:top命令

    top命令用于打印系统的CPU和内存使用情况。 您可以按如下方式使用此命令:

    [root@linuxprobe ~]$ top

    在输出的标题中,您可以看到KiB Mem和Kib Swap条目,通过它们可以检查已用和可用的内存资源。

    方法5:htop命令

    就像top命令一样,htop命令也会详细分析您的CPU和内存使用情况。 如果您的系统上没有安装htop,Ubuntu下可以先通过以下命令更新abt存储库来安装它:

    $ sudo apt-get update

    然后输入以下命令

    $ sudo apt install htop

    CentOS下使用如下命令安装:

    [root@linuxprobe ~]$ sudo yum install htop

    安装htop后,您只需使用以下命令打印所需信息:

    [root@linuxprobe ~]$ htop

    标题中的Mem (Memory 也就是 RAM) 和 Swp (Swap)条目表示已用和总内存,通过它可以计算系统上可用的可用内存。

    使用我们在本文中提到的命令,您可以监视系统进程内存情况。 您可以完全不使用GUI,并且仍然可以检查个人计算机和服务器上的内存使用情况。