nohup.out过大导致磁盘空间不足问题

422 阅读1分钟

问题很常规,也因为历史原因目前还是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下,效果满意