linux上的tomcat日志如果清理不及时,会造成硬盘空间不足,从而导致系统异常。
1、编写sh文件
#!/bin/bash
ferp_logs_path="/usr/local/tomcat/apache-tomcat-8.0.24-fwone-erp/logs"
ferp_fwone_path="${ferp_logs_path}/fwone"
central_logs_path="/usr/local/tomcat/apache-tomcat-8.0.24-fwone-central/logs"
central_fwone_path="${central_logs_path}/fwone"
day=30
find $ferp_logs_path -mtime +${day} -name "localhost_access_log.*.txt" -exec rm -rf {} \;
find $ferp_logs_path -mtime +${day} -name "localhost_access_log.*.txt" -exec rm -rf {} \;
find $ferp_logs_path -mtime +${day} -name "catalina.*.log" -exec rm -rf {} \;
find $ferp_logs_path -mtime +${day} -name "manager.*.log" -exec rm -rf {} \;
find $ferp_logs_path -mtime +${day} -name "host-manager.*.log" -exec rm -rf {} \;
find ${ferp_fwone_path} -mtime +${day} -name "error.log.*" -exec rm -rf {} \;
find ${ferp_fwone_path} -mtime +${day} -name "info.log.*" -exec rm -rf {} \;
find ${ferp_fwone_path} -mtime +${day} -name "warn.log.*" -exec rm -rf {} \;
find ${ferp_fwone_path} -mtime +${day} -name "slow_sql.log.*" -exec rm -rf {} \;
find $central_logs_path -mtime +${day} -name "localhost_access_log.*.txt" -exec rm -rf {} \;
find $central_logs_path -mtime +${day} -name "localhost_access_log.*.txt" -exec rm -rf {} \;
find $central_logs_path -mtime +${day} -name "catalina.*.log" -exec rm -rf {} \;
find $central_logs_path -mtime +${day} -name "manager.*.log" -exec rm -rf {} \;
find $central_logs_path -mtime +${day} -name "host-manager.*.log" -exec rm -rf {} \;
find ${central_fwone_path} -mtime +${day} -name "error.log.*" -exec rm -rf {} \;
find ${central_fwone_path} -mtime +${day} -name "info.log.*" -exec rm -rf {} \;
find ${central_fwone_path} -mtime +${day} -name "warn.log.*" -exec rm -rf {} \;
find ${central_fwone_path} -mtime +${day} -name "slow_sql.log.*" -exec rm -rf {} \;
>$logs_path/catalina.out;
2、编写定时任务
先介绍下定时任务cron
cron服务是Linux的内置服务,但它不会开机自动启动。可以用以下命令启动和停止服务:
systemctl start crond
systemctl stop crond
systemctl restart crond
systemctl reload crond
以上1-4行分别为启动、停止、重启服务和重新加载配置。
要把cron设为在开机的时候自动启动,在 /etc/rc.d/rc.local 脚本中加入 /sbin/service crond start
即可
查看当前用户的crontab,输入 crontab -l;
编辑crontab,输入 crontab -e;
删除crontab,输入 crontab -r
我们先检测定时程序是否开启.
systemctl status crond
这样则正常.
输入命令: crontab -e
进入定时任务编辑,这个编辑其实和vim命令一样,最后:wq保存退出就好了
例如要每分钟执行一个sh文件,可以这样写
*/1 * * * * /usr/local/sh/test.sh
如果要每月1号凌晨3点执行,可以这样写
0 3 1 * *
/usr/local/sh/test.sh