解决ubuntu18下桌面经常卡死的问题

1 准备一个定时释放内存的命令:freemem.sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# vim freemem.sh
  
#!/bin/bash
used=`free -m | awk 'NR==2' | awk '{print $3}'`
free=`free -m | awk 'NR==2' | awk '{print $4}'`
 
filename=/var/log/mem.log
filesize=`ls -l $filename | awk '{ print $5 }'`
maxsize=$((1024*2))
if [ $filesize -gt $maxsize ]
then
    sudo rm $filename
else
    echo ""
fi
 
 
echo "===========================" >> /var/log/mem.log
date >> /var/log/mem.log
echo "Memory usage | [Use:${used}MB][Free:${free}MB]" >> /var/log/mem.log
  
if [ $free -le 100 ] ; then
                sync && echo 1 > /proc/sys/vm/drop_cach
                sync && echo 2 > /proc/sys/vm/drop_caches
                sync && echo 3 > /proc/sys/vm/drop_caches
                echo "OK" >> /var/log/mem.log
else
                echo "Not required" >> /var/log/mem.log
fi

  

2 将执行任务写入 定时任务

1
2
3
4
5
sudo crontab -e
 
结尾添加:
*/1 * * * *  sudo sh /home/dxs/software/freemem.sh
## 意思是:设置每1min执行一次,会自动写入之前脚本里指定的log

  

3 重新启动定时任务

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
重启服务:
sudo service cron restart
 
=============================
修改rsyslog
 
sudo vim /etc/rsyslog.d/50-default.conf
 
cron.*              /var/log/cron.log    #将cron前面的注释符去掉
 
重启rsyslog
 
sudo  service rsyslog  restart
sudo service cron restart
 
 
查看crontab日志
 
 tail -f /var/log/cron.log

 

4 完成,以后再也不会死机了。。。。。。

posted @   dangxusheng  阅读(1685)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示