Chinaunix首页 | 论坛 | 博客
  • 博客访问: 115106
  • 博文数量: 19
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 453
  • 用 户 组: 普通用户
  • 注册时间: 2014-01-03 15:53
个人简介

好好学习 天天向上!

文章分类

全部博文(19)

文章存档

2014年(19)

我的朋友

分类: 系统运维

2014-03-06 09:15:39


前几天遇到一个问题:客户那里的服务器(Linux)会自动的卡死,需要手动重启,才可以正常运行. 但是过个2-3天此现象又会重现。
通过查看系统日志发现可能是系统资源耗尽而导致死机,为了验证此结论对服务器进行在线监控。果不其然,在5分钟的时间里
耗掉了100多兆内存。

于是编写的了一个小小脚本,来手动释放内存:


vi ~/freemem.sh
#!/bin/bash

used=`free -m | awk 'NR==2' | awk '{print $3}'`
free=`free -m | awk 'NR==2' | awk '{print $4}'`

echo "===========================" >> /var/log/memory.log
date >> /var/log/memory.log
echo "Memory usage | [Use.${used}MB][Free.${free}MB]" >> /var/log/memory.log

# To free pagecache:
sync
sleep 1
sync
sleep 1
echo 3 > /proc/sys/vm/drop_caches
echo "This is OK" >> /var/log/memory.log


然后编写一个计划任务,
crontab -e

00 */3  * * *  sh ~/freemem.sh >> /var/log/memory.log


至此,每隔三个小时系统会自动执行脚本freemem.sh     截止目前客户也没有报修的了







阅读(2005) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~