问题很常规,也因为历史原因目前还是jar跑着,导致nohup.out的文件一直产生日志,文件无限增长,那么通过百度和cnblogs找到了比较理想的解决办法,历史原因该服务器提供的系统盘50G,数据盘100G,nohup.out文件过大,但是无法很好的利用数据盘
1、根据网上cnblogs的脚本:日志分割
#!/bin/bash# Description: nohup.out 日志分割 this_path=$(cd `dirname $0`;pwd) #根据脚本所在路径current_date=`date -d "-1 day" "+%Y%m%d"` #列出时间cd $this_pathecho $this_pathecho $current_date do_split () { [ ! -d logs ] && mkdir -p logs split -b 10m -d -a 4 ./nohup.out /home/logs/nohup-${current_date} #切分10兆每块至logs文件中,格式为:nohup-xxxxxxxxxx if [ $? -eq 0 ];then echo "Split is finished!" else echo "Split is Failed!" exit 1 fi} do_del_log() { find ./logs -type f -ctime +7 | xargs rm -rf #清理7天前创建的日志 cat /dev/null > nohup.out #清空当前目录的nohup.out文件} if do_split ;then do_del_log echo "nohup is split Success"else echo "nohup is split Failure" exit 2fi
2、将脚本放到nohup.out同目录下,可设置计划任务,每天定时分割
sh clearNohup.sh
3、因为公司磁盘100G挂载在/home下,所以log直接mv到/home/logs下,效果满意