问题背景:
今天处理了一个本地服务器磁盘的坑,磁盘500G,已使用261G。。。哎,这又是个不写定时清理日志的人留下来的锅啊,之前还有个写死循环爆满磁盘的,都他娘的跑路了。(“草”是一种植物)
解决方案:
使用linux定时任务,定时清理日志
用vim或是vi写一个clearlog.sh的脚本,存放的路径你可以自己选,
我是放在项目同级别的目录下,好管理,/usr/software/scripts/
我设置文件创建时间超过10天的就清理
find /tmp -ctime +10 -exec rm -rf {} +
find /usr/log/*.log -ctime +10 -exec rm -rf {} +
find /usr/software/produce/apache-tomcat-7.0.53/logs -ctime +10 -exec rm -rf {} +
find /usr/software/produce2/apache-tomcat-7.0.53/logs -ctime +10 -exec rm -rf {} +
echo " " > /usr/software/produce/apache-tomcat-7.0.53/logs/catalina.out
echo " " > /usr/software/produce2/apache-tomcat-7.0.53/logs/catalina.out
使用 crontab -e 编写 crontab文件,注意:这里使用crontab -e,会只用使用你当前登录的用户名创建了一个文件为root的定时任务,如果是用admin用户登录,就创建admin的文件,文件存放在/var/spool/cron/ 目录下
crontab -e
#每天定时3点执行
0 3 * * * /usr/software/backup/clearlog.sh
然后保存
去/var/spool/cron/目录下看
接下来就会每天去计算,只要文件创建时间超过10天,每天3点就会被清理掉
吐槽:为什么那些挖坑势力老是不填坑,搞得要我来帮忙填,之前还有个上线的后才发现的死循环导致占满了磁盘,这开发和测试都是在干嘛啊,哎~,果然,草是一种植物