正文
free命令查看内存
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
[root@jojo ~]# free -h
total used free shared buff/cache available
Mem: 991M 273M 64M 1.1M 653M 535M
Swap: 0B 0B 0B
[root@jojo ~]#
Mem : 物理内存
Swap:交换分区
total :总的内存大小
used: 使用的内存大小
free: 剩余的内存大小
shared:被共享使用的物理内存大小
buff/cache: 缓冲区/缓存
available: 应用程序可用的内存
buff/cache 解释:
为了提高系统性能有这样的机制:
buff缓冲区,就是数据要写进磁盘的时候,因为直接写磁盘会比较慢,所以先把数据放进buff,然后由buffer写进磁盘。使用sync命令可以把buffer 的内容一次同步到磁盘。
cache缓存区,就是系统把一些数据放在物理内存缓存着,这样直接读取的时候速度就快多了。
available 可用内存:
理论上来讲,应用系统可用的内存=available+free+buff/cache,因为系统会在应用程序需要内存的时候想办法把buff/cache的内存腾出来给应用程序。单实际上会偏差很大。
有关swap分区的一些参数: swappiness
[root@jojo ~]# cat /proc/sys/vm/swappiness
90
[root@jojo ~]#
参数的取值范围是 0~100,0 告诉内核尽可能的不要将内存数据移到 swap 中,也即只有在迫不得已的情况下才这么做,而 100 告诉内核只要有可能,尽量的将内存中不常访问的数据移到 swap 中。
编辑 /etc/sysctl.conf 添加参数 vm.swappiness = 0,然后执行命令 sysctl -p 生效即可。
ps: 除了free名另外 cat /proc/meminfo 也可以查看内存的使用详细信息。