当前位置:首页 > 内存 > 正文

linux 清理内存

  • 内存
  • 2024-08-01 06:13:06
  • 2895

一、linux清理内存空间?

1.使用free命令查看当前内存使用情况。

freetotalusedfreesharedbufferscachedMem:166218968967952765394402123528377276-/+buffers/cache:37832416243572Swap:10241428010241428##total:总物理内存大小信息描述#used:使用情况#free:可用数量#Shared:多个进程共享的总内存#Buffers/cached:磁盘缓存的大小

2.运行sync进行同步。data

sync#该命令将未写入的系统缓冲区写入磁盘。#这包括修改的索引节点、延迟的块I/O和读/写映射文件。

3.缓存清理(缓存)

/proc/sys/vm/drop_cachesfreetotalusedfreesharedbufferscachedMem:16621896579592160423040268308708-/+buffers/cache:27061616351280Swap:10241428010241428

4、对比步骤1和步骤3中的free命令,可以看到used(减少)和free(增加)对应的是Mem部分,并且清除了缓存。


二、linux下清理内存以及swap第一步:先执行sync命令
#sync
sync命令用于强制将改变的内容立即写入磁盘,并将超级块信息更新为防止释放,可以使用sync命令强制将内存缓冲区中的数据立即写入磁盘。
第二步:清理Linux内存缓存
#echo3>/proc/sys/vm/drop_caches
一般系统不会自动释放它内存
关键配置文件/proc/sys/vm/drop_caches.该文件记录了缓存释放的参数。默认值为0,表示不释放缓存。其值可以是0到3之间的任意数字,代表不同的含义:
0–不释放
1–释放页面缓存
2–释放dentry和inode
3–释放所有缓存
该命令输入立即生效,旨在释放所有缓存。
第三步:关闭swap,然后打开swap
(如果只是清理swap,则不需要执行第二步,因为执行完后第二步关闭swap,会使用较长的时间)
#swapoff-a这一步是因为后台被一点点释放。如果配置的swap太大的话,这里等待的时间就会太长
#swapon-aRestart
linux什么时候开始使用虚拟内存(swap)
A.[root@wenwen~]#cat/proc/sys/vm/swappiness
60
上面的60表示物理内存只会使用swap当使用60%时
当swappiness=0时,表示最大限制物理内存的使用,然后是swap空间。当swappiness=100时,表示主动使用交换分区,及时将内存上的数据移动到交换空间。
一般情况下:
交换分区设置建议为内存的两倍(内存小于等于4G时)。如果内存大于4G,swap只需要比内存大即可。另,尽量降低swappiness,这样系统性能会更好。
B.修改swappiness参数
临时修改:
[root@wenwen~]#ness=10
ness=10
[root@wenwen~]#cat/proc/sys/vm/swappiness    
10
永久修改:
[root@wenwen~]#vim/etc/
添加参数:
ness=35
然后直接:
[root@wenwen~]#sysctl-p
检查是否生效:
cat/proc/sys/vm/swappiness
35