用以反省通博8888官网内存运用的5个下令 - 51CTO.COM
|
|
|
|
挪动端

用以反省通博8888官网内存运用的5个下令

关于 通博8888官网 办理员来说,反省零碎内存用量是一个紧张的技艺。Jack 给出理解决这个题目的五种差别方法。通博8888官网 操纵零碎包括少量东西,一切这些东西都可以协助你办理零碎。从复杂的文件和目次东西到十分庞大的平安下令,在 通博8888官网 中没有几多是你做不了的。

作者:Jack Wallen泉源:通博8888官网中国|2018-08-09 08:00

技能沙龙 | 邀您于8月25日与国美/AWS/转转三位专家配合讨论小顺序电商实战

用以反省通博8888官网内存运用的5个下令

关于 通博8888官网 办理员来说,反省零碎内存用量是一个紧张的技艺。Jack 给出理解决这个题目的五种差别方法。

通博8888官网 操纵零碎包括少量东西,一切这些东西都可以协助你办理零碎。从复杂的文件和目次东西到十分庞大的平安下令,在 通博8888官网 中没有几多是你做不了的。并且,虽然平凡桌面用户能够不需求在下令行熟习这些东西,但关于 通博8888官网 办理员来说,它们是必须的。为什么?起首,你在某些时分不得不运用没有 GUI 的 通博8888官网 效劳器。其次,下令行东西通常比 GUI 替换东西提供更多的功用和灵敏性。

确定内存运用状况是你能够需求的技艺,尤其是某个使用顺序变得非常和占用零碎内存时。当发作这种状况时,晓得有多种东西可以协助你停止毛病扫除非常方便的。或许,你能够需求搜集有关 通博8888官网 交流分区的信息,或许有关装置的内存的细致信息?关于这些也有相应的下令。让我们深化理解种种 通博8888官网 下令行东西,以协助你反省零碎内存运用状况。这些东西并不黑白常难以运用,在本文中,我将向你展现五种差别的办法来处理这个题目。

我将在 Ubuntu 18.04 效劳器平台上停止演示,但是你应该在你选择的刊行版中找到对应的一切下令。更妙的是,你不需求装置任何工具(由于大少数这些东西都包括 通博8888官网 零碎中)。

话虽云云,让我们开端任务吧。

top

我想从最常用的东西开端。top 下令提供正在运转的零碎的及时静态视图,它反省每个历程的内存运用状况。这十分紧张,由于你可以轻松地看到统一下令的多个示例耗费差别的内存量。固然你无法在没有表现器的效劳器上看到这种状况,但是你曾经留意到翻开 Chrome 使你的零碎速率变慢了。运转 top 下令以检查 Chrome 有多个历程在运转(每个选项卡一个 - 图 1)。

图1:top 下令中呈现多个 Chrome 历程。

图1:top 下令中呈现多个 Chrome 历程。

Chrome 并不是独一表现多个历程的使用。你看到图 1 中的 Firefox 了吗?那是 Firefox 的主历程,而 Web Content 历程是其翻开的选项卡。在输入的顶部,你将看到零碎统计信息。在我的呆板上(System76 Leopard Extreme),我统共有 16GB 可用 RAM,此中只要超越 10GB 的 RAM 正在运用中。然后,你可以整理该列表,检查每个历程运用的内存百分比。

top 最好的中央之一便是发明能够曾经失控的效劳的历程 ID 号(PID)。有了这些 PID,你可以对有题目的义务停止毛病扫除(或 kill)。

假如你想让 top 表现更敌对的内存信息,运用下令 top -o %MEM,这会使 top 按历程所用内存对一切历程停止排序(图 2)。

图 2:在 top 下令中按运用内存对历程排序

图 2:在 top 下令中按运用内存对历程排序

top 下令还为你提供有关运用了几多交流空间的及时更新。

free

但是偶然候,top 下令能够不克不及满意你的需求。你能够只需求检查零碎的可用和已用内存。对此,通博8888官网 另有 free 下令。free 下令表现:

  • 可用和已运用的物理内存总量
  • 零碎中交流内存的总量
  • 内核运用的缓冲区弛缓存

在终端窗口中,输出 free 下令。它的输入不是及时的,相反,你将取得的是以后闲暇和已用内存的即时快照(图 3)。

图 3 :free 下令的输入复杂明白。

图 3 :free 下令的输入复杂明白。

固然,你可以经过添加 -m 选项来让 free 表现得更敌对一点,就像如许:free -m。这将表现内存的运用状况,以 MB 为单元(图 4)。

图 4:free 下令以一种更易于阅读的方式输入。

图 4:free 下令以一种更易于阅读的方式输入。

固然,假如你的零碎是很新的,你将盼望运用 -g 选项(以 GB 为单元),比方 free -g

假如你需求晓得内存总量,你可以添加 -t 选项,比方:free -mt。这将复杂地盘算每列中的内存总量(图 5)。

图 5:为你提供闲暇的内存列。

图 5:为你提供闲暇的内存列。

vmstat

另一个十分方便的东西是 vmstat。这个特别的下令是一个陈诉假造内存统计信息的小本领。vmstat 下令将陈诉关于:

  • 历程
  • 内存
  • 分页
  • 壅闭 IO
  • 中缀
  • 磁盘
  • CPU

运用 vmstat 的最佳办法是运用 -s 选项,如 vmstat -s。这将在单列中陈诉统计信息(这比默许陈诉更容易阅读)。vmstat 下令将提供比你需求的更多的信息(图 6),但更多的总是更好的(在这种状况下)。

图 6:运用 vmstat 下令来反省内存运用状况。

图 6:运用 vmstat 下令来反省内存运用状况。

dmidecode

假如你想找到关于已装置的零碎内存的细致信息,该怎样办?为此,你可以运用 dmidecode 下令。这个特别的东西是 DMI 表解码器,它将零碎的 DMI 表内容转储成人类可读的款式。假如你不清晰 DMI 表是什么,那么可以如许说,它可以用来描绘零碎的组成(以及零碎的演化)。

要运转 dmidecode 下令,你需求 sudo 权限。因而输出下令 sudo dmidecode -t 17。该下令的输入(图 7)能够很长,由于它表现一切内存范例设置装备摆设的信息。因而,假如你无法上下转动,则能够需求将该下令的输入发送到一个文件中,比方:sudo dmidecode -t 17> dmi_infoI,或将其通报给 less 下令,如 sudo dmidecode | less

图 7:dmidecode 下令的输入。

图 7:dmidecode 下令的输入。

/proc/meminfo

你能够会问本人:“这些下令从那边获取这些信息?”在某些状况下,它们从 /proc/meminfo 文件中获取。猜到了吗?你可以运用下令 less /proc/meminfo 间接读取该文件。经过运用 less 下令,你可以在长长的输入中向上和向下转动,以精确找到你需求的内容(图 8)。

图 8:less /proc/meminfo 下令的输入。

图 8:less /proc/meminfo 下令的输入。

关于 /proc/meminfo 你应该晓得:这不是一个真实的文件。相反 /proc/meminfo 是一个假造文件,包括有干系统的及时静态信息。特殊是,你需求反省以下值:

  • 全部内存(MemTotal
  • 闲暇内存(MemFree
  • 可用内存(MemAvailable
  • 缓冲区(Buffers
  • 文件缓存(Cached
  • 交流缓存(SwapCached
  • 全部交流区(SwapTotal
  • 闲暇交流区(SwapFree

假如你想运用 /proc/meminfo,你可以衔接 egrep 下令运用它:egrep --color'Mem | Cache | Swap'/proc/meminfo。这将天生一个易于阅读的列表,此中包括 MemCacheSwap 等外容的条款将是黑色的(图 9)。

图 9:让 /proc/meminfo 更容易阅读。

图 9:让 /proc/meminfo 更容易阅读。

持续学习

你要做的第一件事便是阅读每个下令的手书页(比方 man topman freeman vmstatman dmidecode)。服从令的手书页开端,关于怎样在 通博8888官网 上运用一个东西,它总是一个很好的学习办法。

【编辑引荐】

  1. 通博8888官网使用顺序加载机制-你真的清晰吗?
  2. 怎样运用下令行反省通博8888官网上的磁盘空间
  3. 进步UNIX/通博8888官网任务服从的十个小贴士
  4. 通博8888官网 下令行凶猛 实在通博8888 的也很强:深化 通博8888 控制台
  5. UKTools:装置最新通博8888官网内核的轻便办法
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
各人都在看
猜你喜好

读 书 +更多

Java面向工具编程

Java是以后最盛行的顺序设计言语之一。本书以Java最新版本Java SE5为根底,涵盖了Java SE5最新特性,由浅入深地引见了Java SE5的次要内容。...

订阅51CTO邮刊

点击这里检查样刊

订阅51CTO邮刊