linux shm文件加载超过,过多的内存文件/dev/shm导致死机

本文描述了一次排查Linux系统因/dev/shm内存文件过多导致频繁死机的过程。通过监控系统状态、释放内存缓存、检查文件描述符,最终发现是进程删除/dev/shm目录下的文件造成内存占用过高。解决方法包括清理内存文件及理解ls与du命令的区别。
摘要由CSDN通过智能技术生成

过多的内存文件/dev/shm导致死机

我们的IPS是基于Linux系统的一款设备,最近总是频繁死机,死机之后即不能从终端登陆,也不能连接屏幕查看打印信息。万般无赖之下,我只能在没有死机的情况下使用top命令,然后一直盯着终端,看看在死机之前有没有什么异常现象。通过半天的观察,我终于发现了一些异常之处,当系统变得越来越缓慢的时候,系统内存处于比较低的状态,而另一个叫cached的参数却很高,后来我了解到,cached所指的空间一般是为文件操作所分配的空间,也就是文件缓存,例如当文件打开之后,向文件中写入数据,这些数据都会先保存在内存中,直到这些数据被写入磁盘,才会释放这一部分内存空间,而cached所指的值即为这部分空间的大小,也就是说这部分空间是被占用的,不能被使用的。下图中标记了free和cached的空间大小:

0818b9ca8b590ca3270a3433284dd417.png

在网上搜了一下,发现这一部分空间也不是完全不能使用,可以通过一个方法将缓冲区中的数据写到磁盘文件中,从而释放缓冲区所占用的空间,具体介绍如下:

复制代码 代码如下:

echo 3 > /proc/sys/vm/drop_caches

说明:

1>. /proc是一个虚拟文件系统,我们可以通过对它的读写操作作为与kernel实体间进行通信的一种手段。也就是说可以

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值