手工清理swap分区方法
浏览:163
- |
- |
- 更新:2016-10-21 03:12
- |
- 6
Linux系统中我们一般不需要去释放内存,因为系统已经将内存管理的很好。但也有时候内存会被缓存耗尽,导致系统使用SWAP空间影响性能,此时就需要执行释放内存(清理缓存)的操作
方法/步骤
-
如下图所示物理内存已经被缓存占了很大部分空间了,系统使用大量的SWAP空间
-
我们需要使用sync命令,将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件。否则在释放缓存的过程中,可能会丢失未保存的文件
#sync
-
我们将参数写进/proc/sys/vm/drop_caches文件中,比如我们需要释放所有缓存,就输入下面的命令:
#echo 3 > /proc/sys/vm/drop_caches
此指令输入后会立即生效,可以查询现在的可用内存明显的变多
-
swapon -s 查询swap分区所挂载目录
-
swapoff /dev/sda2
停止是需要一段时间,因为它会把内存释放到实际内存当中
-
启动swap分区
swapon -a
-
swap分区内存已经成功释放到了实际内存当中
清理了不到几十秒的时间,缓存增长过大,又开始使用SWAP空间了。还是要找出根本原因
END