解释 Linux 中 Free 命令的输出
在 Linux 中使用 Free Command 非常简单。 以下是 free 命令的语法:
自由 [options]
free 命令的示例输出可能如下所示:
[[email protected] ~]$ free
total used free shared buff/cache available
Mem: 8048372 2593004 1366712 658380 4088656 4494976
Swap: 0 0 0
这 自由 不带选项的命令通过访问来自 Linux 内核的信息返回系统上“总”、“已用”和“空闲”内存的结果。 它还显示“共享”、“缓冲/缓存”和“可用”的类别。
为了避免一些潜在的混淆,让我们澄清这些术语的含义。
- 全部的 很简单。 这个数字代表了所有现有的内存。
- 用过的 是总系统 RAM 减去分配的空闲、共享、缓冲区和高速缓存内存的计算。
- 自由 是没有被用于任何目的的内存。
- 共享、缓冲、 和 缓存 字段标识用于内核/操作系统需求的内存。 缓冲区和缓存相加,总和列在 ‘缓冲区/缓存‘。
- 可用的 内存出现在较新版本的 自由 并且旨在让最终用户估计仍有多少内存资源可供使用。
这些澄清很重要。 错误地将含义赋予术语空闲或已用内存可能会产生对系统内存使用的误解。
这可能会导致没有经验的用户错误地认为他们的系统需要升级为更多 RAM。 请注意,在以前的版本中,没有显示 可用的 记忆。 用户可能会错误地认为,由于内存使用率很高,他们的硬件功能不足。 可用的选项卡大概是为了帮助消除这种常见的误解。
Linux 操作系统使用缓存来提高性能。 在非常基本的术语中,这意味着在需要之前预留一定数量的内存以供使用,以便可以更快地处理它。 这是一个标准过程,无需担心,除非这些值对您当前的使用非常不寻常。
对于只想知道他们的系统如何响应某些应用程序的人来说,“可用”内存估计可能已经足够了。 如果您看不到此字段,您可能需要更新到最新版本的“免费”。 您可以通过运行“free -V”来检查当前版本。 我的 3.3.15 版在其输出中有“可用”。
自定义 free 命令的输出
默认输出以千字节显示信息,但如果您愿意,可以选择以不同格式显示。 运行帮助(免费 -help)会显示您可以附加的所有可能选项。
在我看来,这里最有用的选项是 -h,它以人类可读的格式显示 free 命令的输出。
[[email protected] ~]$ free -h
total used free shared buff/cache available
Mem: 7.7Gi 2.5Gi 1.5Gi 479Mi 3.7Gi 4.4Gi
Swap: 0B 0B 0B
还有其他选择。 它们通过一些基本的数学转换显示相同的请求信息。 我认为人类可读的选项(free -h)是对日常用户最有效的选项之一。
自动化自由命令并连续或定期运行它
另一个很棒的功能是自动执行命令的能力。 有两个选项可帮助我们自定义此工具:
- 有“-s”,它在指定的秒间隔内运行免费命令,直到用户退出程序(^+C)。
- 还有 ‘-c’ 可以单独使用或与 seconds 选项结合使用。 如果您只输入“-c”和一个整数 (n),它将运行命令 n 次。 默认情况下,它使用一秒的时间间隔。
假设您要打开一系列应用程序并查看您的内存受到的影响。 对于我的测试输出,我将使用人类可读的格式,使用 1000 (Gb) 而不是 1024 (GiB) 的幂。 我要录制20秒来分析影响。 我将每 5 秒捕获一次数据,我将执行 4 次计数。 这是这个 example 格式化为命令行及其输出:
[[email protected] ~]$ free -h --si -s 5 -c 4
total used free shared buff/cache available
Mem: 7.9G 2.8G 1.2G 501M 3.8G 4.2G
Swap: 0B 0B 0B
total used free shared buff/cache available
Mem: 7.9G 2.8G 1.2G 501M 3.8G 4.2G
Swap: 0B 0B 0B
total used free shared buff/cache available
Mem: 7.9G 2.9G 1.1G 549M 3.9G 4.1G
Swap: 0B 0B 0B
total used free shared buff/cache available
Mem: 7.9G 3.0G 998M 553M 3.9G 4.0G
Swap: 0B 0B 0B
我等了几秒钟,然后打开了一些浏览器选项卡并访问了一些书签。 这些活动的压力体现在产出的波动上。 请注意,使用舍入较少的输出格式效果会更明显。 出于我们纯粹的演示目的,这是不必要的。
如果您想使用 free 命令持续监控内存使用情况,但不希望其输出使屏幕混乱,您可以将 watch 命令与 free 命令一起使用。
这将只显示 free 命令的一个输出,但此输出将定期更改。
watch free -h
结论
本教程演示了如何开始在 Linux 中使用“免费”命令。 希望本指南对您有所帮助且易于理解。 “免费”可用于分析系统内存使用情况,并且可以使用其各种选项进行调整,以根据您的需要微调输出。
如果您有任何问题或建议,请在评论部分告诉我们。