欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux操作系统基础命令-free

程序员文章站 2022-06-19 08:23:45
...

free 显示内存使用情况

Linux free1 命令(free) 用来显示Linux系统中空闲的、已用的物理内存及交换分区(swap)内存,及被内核使用的buffer。
其数据取自 /proc/meminfo文件。在这个文件中,数据的存储就是以KB为单位,所以free的默认值也是KB。

free 用法

Usage: free [options]
options [-b | -k | -m | -g | --tera | -h |–si ] [-l] [-t] [-s delay ] [-c count ] [–help] [-V]
e.g., free, free -h -s 2 -c 3
-s delay:动态刷新内存使用情况的间隔
-c count:展示结果次数,与 -s 配合使用

$ free -h -s 2 -c 3
              total        used        free      shared  buff/cache   available
Mem:           7.6G        793M        1.3G         88M        5.6G        6.5G
Swap:           13G          0B         13G

              total        used        free      shared  buff/cache   available
Mem:           7.6G        793M        1.3G         88M        5.6G        6.5G
Swap:           13G          0B         13G

              total        used        free      shared  buff/cache   available
Mem:           7.6G        794M        1.3G         88M        5.6G        6.5G
Swap:           13G          0B         13G

free 选项

选项 简要描述
-b, --bytes 以Byte为单位显示内存使用情况
-k, --kilo 以KB为单位显示内存使用情况
-m, --mega 以MB为单位显示内存使用情况
-g, --giga 以GB为单位显示内存使用情况
–tera 以TB为单位显示内存使用情况
-h, --human 自动将数值转换为人类易读形式
--si use powers of 1000 not 1024
-l, --lohi show detailed low and high memory statistics
-t, --total show total for RAM + swap
-s N, --seconds N repeat printing every N seconds
-c N, --count N repeat printing N times, then exit
-w, --wide 显示结果宽输出
--help 显示free使用帮助
-V, --version 显示free版本信息

free 示例

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           7.6G        794M        1.3G         88M        5.6G        6.5G
Swap:           13G          0B         13G

Mem 内存
total 内存总量
used 已经使用的内存数量
free 真正尚未被使用的物理内存数量
shared 多个进程共享的内存总量
buffer/cache 缓存
available 可被应用程序使用的内存数量 available = free + buffer + cache

Swap 交换分区
total 内存总量
used 已经使用的内存数量
free 真正尚未被使用的物理内存数量
注意:系统总是在物理内存不够时,才进行Swap交换。所以swap分区不被占用或者占用很少,说明现在系统内存够用,运行还算良好,不会影响系统运行。

free 命令中的信息都来自于/proc/meminfo文件,文件包含了更多更原始的信息

# cat /proc/meminfo 查看内存的详细信息
$ cat /proc/meminfo
MemTotal:        8012508 kB
MemFree:         1316756 kB
MemAvailable:    6782712 kB
Buffers:          326680 kB
Cached:          5305172 kB
SwapCached:            0 kB
Active:          1406172 kB
Inactive:        4935404 kB
Active(anon):     759372 kB
Inactive(anon):    41428 kB
Active(file):     646800 kB
Inactive(file):  4893976 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:      14680060 kB
SwapFree:       14680060 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:        709744 kB
Mapped:           110500 kB
Shmem:             91092 kB
Slab:             251048 kB
SReclaimable:     231148 kB
SUnreclaim:        19900 kB
KernelStack:        4208 kB
PageTables:        17800 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:    18686312 kB
Committed_AS:    4216764 kB
VmallocTotal:   34359738367 kB
VmallocUsed:       23180 kB
VmallocChunk:   34359712804 kB
HardwareCorrupted:     0 kB
AnonHugePages:    466944 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:       75648 kB
DirectMap2M:     3074048 kB
DirectMap1G:     6291456 kB

参考资料

  • 如有 错误之处 还请多多指正

注脚


  1. free ↩︎