linux下内存释放命令 linux内存释放机制
Linux下如何释放内存
首先,查看/proc/sys/vm/drop_caches的值
乐亭网站建设公司创新互联,乐亭网站设计制作,有大型网站制作公司丰富经验。已为乐亭上1000家提供企业网站建设服务。企业网站搭建\外贸网站建设要多少钱,请找那个售后服务好的乐亭做网站的公司定做!
[root@server test]# cat /proc/sys/vm/drop_caches
值默认为0
然后,运行sync命令
[root@server test]# sync
手动执行sync命令(描述:sync 命令运行 sync 子例程。如果必须停止系统,则运行sync 命令以确保文件系统的完整性。sync 命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件)
最后,输入手动释放内存的命令
[root@server test]# echo 1 /proc/sys/vm/drop_caches
drop_caches的值可以是0-3之间的数字,代表不同的含义:
0:不释放(系统默认值)
1:释放页缓存
2:释放dentries和inodes
3:释放所有缓存
释放完内存后改回去让系统重新自动分配内存
echo 0 /proc/sys/vm/drop_caches
free -m #看内存是否已经释放掉了。
如果我们需要释放所有缓存,就输入下面的命令:
[root@server test]# echo 3 /proc/sys/vm/drop_caches
Linux内核中如何申请和释放内存?
1、首先打开Linux命令窗口,可使用快捷键Ctrl+Alt+T打开。
2、这时查看一下当前Linux系统内存使用情况,使用命令:Free –m,total 内存总数,used 已经使用的内存数,free 空闲的内存数。
3、接下来的操作需要先获取高级用户权限,输入命令:sudo -i,确定后输入高级用户密码。
4、这时进行拷贝文件拷贝,增加内存使用量(即used的占用量),输入命令: cp -r /etc ~/test/。
5、执行命令结束后,再次查看一下当前Linux系统内存使用情况,发现有70M的内存被cached用了。使用命令:Free –m。
6、接下来释放已被占用的缓存,输入命令: cat /proc/sys/vm/drop_caches,回车后返回结果0。
7、接着输入命令:sync,回车后继续输入命令:echo 3 /proc/sys/vm/drop_caches,回车后继续输入:cat /proc/sys/vm/drop_caches,回车后返回结果3,将/proc/sys/vm/drop_caches值设为3。
8、这样缓存释放就已经完成了,再次执行命令Free –m看看,通过图中可以对比看到,内存被释放了218M。
linux下清理内存以及swap
第一步:先执行sync命令
#sync
sync命令用于强制被改变的内容立刻写入磁盘,更新超块信息,以防止释放,sync命令则可用来强制将内存缓冲区中的数据立即写入磁盘中。
第二步:清理linux内存缓存
#echo 3 /proc/sys/vm/drop_caches
一般系统是不会自动释放内存的
关键的配置文件/proc/sys/vm/drop_caches。这个文件中记录了缓存释放的参数,默认值为0,也就是不释放缓存。他的值可以为0~3之间的任意数字,代表着不同的含义:
0 – 不释放
1 – 释放页缓存
2 – 释放dentries和inodes
3 – 释放所有缓存
此指令输入立即生效,意在释放所有缓存。
第三步:关闭swap,再开启swap
(如果只是清理swap,第二部可以不用进行操作,因为操作了第二步关闭swap时会使用更长的时间)
#swapoff -a 这一步因为是后台 在一点一点的释放,如果配置的swap超大,这里就等待得超久一些
#swapon -a 再开启
linux什么时候开始使用虚拟内存(swap)
A.[root@wenwen ~]# cat /proc/sys/vm/swappiness
60
上面这个60代表物理内存在使用60%的时候才会使用swap
swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,
swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。
通常情况下:
swap分区设置建议是内存的两倍 (内存小于等于4G时),如果内存大于4G,swap只要比内存大就行。另外尽量的将swappiness调低,这样系统的性能会更好。
B.修改swappiness参数
临时性修改:
[root@wenwen ~]# sysctl vm.swappiness=10
vm.swappiness = 10
[root@wenwen ~]# cat /proc/sys/vm/swappiness
10
永久性修改:
[root@wenwen ~]# vim /etc/sysctl.conf
加入参数:
vm.swappiness = 35
然后在直接:
[root@wenwen ~]# sysctl -p
查看是否生效:
cat /proc/sys/vm/swappiness
35
linux清理内存缓存命令
看缓存的命令
free -m
清理缓存的命令
echo 1 /proc/sys/vm/drop_caches
echo 2 /proc/sys/vm/drop_caches
echo 3 /proc/sys/vm/drop_caches
echo 0 是不释放缓存
echo 1 是释放页缓存 《Linux就该这么学》
ehco 2 是释放dentries和inodes缓存
echo 3 是释放 1 和 2 中说道的的所有缓存
新闻名称:linux下内存释放命令 linux内存释放机制
浏览路径:http://scyanting.com/article/dopiooi.html