Linux下每天自动备份Nginx日志linux服务器应用 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【meiwen.anslib.com - 电脑资料】

   

    通过Linux定时任务系统每天0点0分备份,

Linux下每天自动备份Nginx日志linux服务器应用

    日志存储目录: /opt/www/logs/nginx

    备案存储目录: /opt/www/logs/all

    日志文件格式: yyyy-mm-dd.tar.bz2

    #!/bin/bash

    # powered by www.baidu.org.tw

    # author:kethinc

    # useage: crontab -e

    # 0 0 * * * sh /opt/www/logs/logstore.sh > /dev/null 2>&1

    # The Nginx logs bak

    work_path=”/opt/www/logs”

    logs_path=${work_path}”/nginx”

    store_path=${work_path}”/all/”$(date -d “yesterday” +”%Y”)

    yesterday_logs_path=$(date -d “yesterday” +”%Y-%m-%d”)

    yesterday_logs_file=${yesterday_logs_path}.tar.bz2

    cd $work_path

    mv ${logs_path} ${yesterday_logs_path}

    mkdir -p ${logs_path}

    /etc/init.d/nginx reload #重新载入nginx因为原来的日志文件都已移动位置需要重新生成文件以免发生一些错误(感觉可能会发生没测试过)

    tar -jcvf ${yesterday_logs_file} ${yesterday_logs_path}

    mkdir -p ${store_path}

    mv ${yesterday_logs_file} ${store_path}

    rm -rf ${yesterday_logs_path}

    使用方法:

    保存脚本文件 /opt/www/logs/logstore.sh

    编辑定时任务配置文件: crontab -e

    在最后一行输入: 0 0 * * * sh /opt/www/logs/logstore.sh > /dev/null 2>&1

最新文章