首页 > 技术文章 > Linux 查看内存(free)、释放内存(基本操作)

sgh69 2019-12-06 09:56 原文

原文链接:http://blog.51cto.com/11495268/2384147

1、简介

1.1 介绍

    很多时候,服务器 负载 很高(执行操作 很慢),很多 原因 造成 这种 现象(内存不足 就是其中之一);此文 主要 关于 内存的 查看、释放 相关 知识
    

1.2 操作 系统

  1. ## 本文 使用 CentOS 7
  2. # cat /etc/redhat-release
  3. CentOS Linux release 7.0.1406 (Core)

    

2、内存 信息

2.1 获取 内存信息

  1. # free -m
  2. total used free shared buffers cached
  3. Mem: 979 261 717 6 0 74
  4. -/+ buffers/cache: 186 793
  5. Swap: 2079 0 2079

    

2.2 信息 解析

  1. Mem:物理内存 统计
  2. -/+ buffers/cache:物理内存 缓存 统计
  3. Swap:硬盘 交换分区 统计

    

2.2.1 物理内存 统计

  1. total:总内存
  2. used:已使用的内存(包含 shared、buffers、cached)
  3. free:未分配的内存
  4. shared:共享内存
  5. buffers:块设备的读写缓冲区
  6. cached:文件系统的cache

    

2.2.2 物理缓存 统计

  1. used:该数值 为 物理内存 行数值计算或者(used - buffers - cached)
  2. free:该数值 为 物理内存 行数值计算或者(free + buffers + cached)

    

2.2.3 交换分区 统计

    暂不做 介绍
    

3、内存 释放

    调整/proc/sys/vm/drop_caches来释放内存(/proc是一个虚拟文件系统,我们可以通过对它的读写操作做为与kernel实体间进行通信的一种手段;可以通过修改/proc中的文件,来对当前kernel的行为做出调整)
    

3.1 刷新 缓冲区

    某些 情况下,我们 必须停止系统,此时 可以 运行 sync 命令以确保文件系统的完整性;sync 命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件

  1. ## 一般刷两次
  2. # sync && sync

    

3.2 释放 内存

  1. ## /proc/sys/vm/drop_caches 默认值 为 0
  2. # echo 3 > /proc/sys/vm/drop_caches

转载于:https://blog.51cto.com/11495268/2384147

推荐阅读