有时我们需要准确地知道我们的Linux系统如何使用内存。以作出是否需要添加交换空间的确定。或者直接添加内存增加内存总量。

本教程将研究如何使用free命令查看Linux系统上的内存使用情况。说明Linux系统空闲内存和可用内存之间的区别。

比较空闲内存和可用内存。对于Linux服务器来说,过多的空闲内存可以被视为一种浪费资源的行为。

可用内存与空闲内存区别

空闲内存是不被任何进程使用内存。出于这个原因,尤其是在Linux服务器,将空闲内存视为浪费的内存

可用内存是可用于分配给启动进程或现有进程的内存总量。可用内存是不需要使用交换空间的。

Linux中空闲内存与可用内存之间的区别在于,空闲内存不被任何进程使用,并且无所事。

虽然可用内存是使用过的内存,不限于缓存和缓冲区,但在不使用交换空间的情况下可重用可用内存。

比较空闲内存和可用内存

考虑到这一点,让我们看看两台60GB内存的Linux服务器。服务器A和服务器B。我们将使用free命令查看Linux中的可用内存与空闲内存,运行命令free -h

结果类似于下面这两个屏幕截图。我们还运行了uptime命令以确认两个系统都已在线一段时间。

free -h

服务器A的空闲内存少于1%,具有13GB可用内存。服务器B正常运行153天之后,仍然浪费30GB内存,即空闲内存Free。

以上是Linux中空闲内存与可用内存之间的区别。当您比较两个系统时,即使负载平均值相似,很明显服务器A几乎使用了其内存的100%,服务器B则浪费了50%以上的内存。

值得一提的是,即使你Linux服务器有足够的可用内存,Linux内核也会将不常用的内存页面移动到交换空间中。这就是为什么你应该添加交换空间swap的原因。

结论

至此,你已经知道可用内存与空闲内存的区别,也知道如何使用Free命令查看Linux服务器内存使用情况。如你有任何疑问,请在评论随时发表你的反馈。