跳到主要内容

free命令:内存查看

简介

free 命令是 Linux 系统中的一个实用工具,用于显示系统中的内存使用情况。通过运行 free 命令,您可以获取有关系统中可用内存、已使用内存以及缓存和交换空间的详细信息。

统一查看内存信息:

[root@localhost ~]# free -h
total used free shared buff/cache available
Mem: 1.8G 89M 1.5G 9.5M 153M 1.5G
Swap: 2.0G 0B 2.0G
参数说明
total总计的物理内存量
used使用的物理内存量
free空闲的物理内容量
shared用于共享内存的物理内存量
buff/cache用于缓存的物理内存量
available用于当前操作系统可分配的内存量,包括空闲和缓存的内存

available

available是站在应用程序的角度来看,系统可以用的内存大小。因为linux内核为了提升磁盘操作 的性能,会消耗一部分内存去缓存磁盘中的数据,就是buff/cache。

因此,当系统上运行的应用程序需要更多内存时,Linux内核会优先释放部分buff/cache中的内容,以便为应用程序提供所需的内存空间。这种机制可以更好地利用系统内存,提高整体性能。

所以available=free+buff+cache。

buff/cache

  • Cache(缓存):是将磁盘上的数据缓存到内存中,以便下次访问时可以直接从内存中读取,而不需要重新访问磁盘,从而提高读取速度。
  • Buffer(缓冲):是用于临时存储分散的读写请求,在一定程度上可以优化磁盘的读取和写入操作,减少对磁盘的频繁访问,提高效率。比如有5个读写请求过来,但是现在磁盘压力很大,就会将这5个请求放在Buffer中,进行缓冲,等磁盘压力没那么大之后,再发送请求给磁盘,释放掉这一部分空间。

其它参数

  1. -b, --bytes:以字节为单位显示内存使用情况。
  2. -k, --kilo:以千字节(KB)为单位显示内存使用情况。
  3. -m, --mega:以兆字节(MB)为单位显示内存使用情况。
  4. -g, --giga:以吉字节(GB)为单位显示内存使用情况。
  5. --tera:以太字节(TB)为单位显示内存使用情况。
  6. --peta:以拍字节(PB)为单位显示内存使用情况。
  7. -h, --human:以人类可读的方式显示内存使用情况,将内存单位转换为易读的格式(如 KB、MB、GB)。
  8. --si:使用 1000 的幂而不是 1024 来显示内存使用情况。
  9. -l, --lohi:显示详细的低内存和高内存统计信息。
  10. -t, --total:显示 RAM 和交换空间(swap)的总和。
  11. -s N, --seconds N:每隔 N 秒重复打印内存使用情况。
  12. -c N, --count N:重复打印 N 次后退出。
  13. -w, --wide:显示宽格式的输出,包含更多列。
  14. --help:显示帮助信息并退出。
  15. -V, --version:显示版本信息并退出。

结语

free 命令是 Linux 系统中一个重要的工具,用于监视系统中的内存使用情况。通过查看可用内存、已使用内存以及缓存和交换空间等参数,用户可以更好地了解系统的内存配置和使用情况。在日常管理和维护工作中,free 命令是一个不可或缺的工具,它能够帮助用户及时发现并解决系统内存相关的问题,保障系统的稳定性和性能。