温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

查询Linux系统内存总得不到想要的信息?这有更好的命令

发布时间:2020-08-10 15:13:56 来源:ITPUB博客 阅读:173 作者:云编 栏目:建站服务器

   有许多办法可以获得Linux系统上所安装内存的信息,并查看其中有多少内存正在使用中。有的命令会展示大量的细节,而有的命令则提供了简洁(但不一定容易理解)的结果。在这篇文章中将介绍一些更有用的工具,帮助你检查内存及其使用情况。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  不过,在进一步讨论之前,我们要先回顾一些基本知识。物理内存和虚拟内存是不一样的,后者包括配置为交换区的磁盘空间。交换区可能包括为此用途预留的分区,或者那些为添加到新的交换区而创建的文件——当创建一个新的分区并不实际时。有些Linux命令提供了这两方面的信息。

  交换区通过提供磁盘空间来扩展内存,这些磁盘空间可用于存放那些物理内存已满时移动到磁盘的非活动页。

  在内存管理中起到作用的一个文件是/proc/kcore,这个文件看起来像一个普通的(虽然非常大)文件,但是它根本不占用磁盘空间。就像/proc中的所有文件一样,它是一个虚拟文件。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  有趣的是,下面查询的两个系统没有安装相同数量的内存,但是/proc/kcore的大小在这两个系统上是相同的。第一个系统安装了4 GB内存,第二个有6 GB。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  该文件的大小表示可用虚拟内存的数量(可能加上4K),这个解释可能站不住脚。这个数字表明这些系统上的虚拟内存是128 TB!这个数字代表64位系统能够寻址的内存数量,而不是系统上的可用内存数量。通过以下方式进行计算,再加上4 K,就可以推导出这个数字:

查询Linux系统内存总得不到想要的信息?这有更好的命令

  另一个更人性化的检查内存的命令是free命令,它可以提供一个易于理解的内存报告。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  使用-g选项,free以gb为单位报告这些值。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  使用-t选项,free显示的值与没有选项时显示的值相同(不要混淆-t和tb),但是在输出的底部添加了一行。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  当然,你也可以同时使用这两个选项。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  如果你希望得到“这个系统上安装了多少RAM”的答案,那么你可能会对这个报告感到失望,这与上面示例中显示的具有6GB RAM的系统相同。并不表示这个报告是错的,而是系统对它所拥有的内存的看法。free命令还提供了每X秒(在下面的示例中为10秒)更新一次结果的选项。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  使用-l, free命令可以提供高内存使用量和低内存使用量。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  查看内存的另一个办法是/proc/meminfo文件。与/proc/kcore类似,这是一个虚拟文件,它提供了一个有用的报告,显示安装了多少内存、空闲内存和可用内存。显然,空闲和可用并不是一个意思。MemFree代表未使用的RAM,MemAvailable是对启动新应用程序可用内存的估计。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  如果只想查看总内存,可以使用以下命令之一:

查询Linux系统内存总得不到想要的信息?这有更好的命令

  DirectMap条目将内存上的信息分解成类别。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  DirectMap4k表示映射到标准4k页面的内存量,而DirectMap2M表示映射到2MB页面的内存量。

  getconf命令将提供的信息往往比较多。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  使用如下所示的命令可以将输出缩减为特定的内容,你能够获得与上面的一些命令相同的信息。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  该命令通过将输出的第一行和最后一行中的值相乘来计算内存,如下所示:

查询Linux系统内存总得不到想要的信息?这有更好的命令

  独立地进行计算,我们就可以看到这个值是如何推导出来的。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  另一个输出非常容易理解的命令是top,top输出前5行中的数字显示了内存的使用情况。

查询Linux系统内存总得不到想要的信息?这有更好的命令

  最后这个命令将以简洁的方式回答“这个系统上安装了多少RAM ?

查询Linux系统内存总得不到想要的信息?这有更好的命令

  根据您希望看到的详细信息的多少,Linux系统提供了许多选项,可以查看系统上安装了多少内存,以及使用了多少内存和有多少可用内存。

  原文作者: Sandra Henry-Stocker 来源:NetworkWorld


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI