0
点赞
收藏
分享

微信扫一扫

nginx日志切割打包备份脚本

高子歌 2021-09-30 阅读 146
Linux
#!/bin/bash
nowtime=`date +%F`             #时间变量
hostname=`hostname`           #主机名
/usr/bin/mv /var/log/nginx/access.log /var/log/nginx/${nowtime}_${hostname}_nginx.log   #切割日志,路径可以自行更换成自己的路径
if [ $? -eq 0 ]
then
    echo "${nowtime}日志切割成功" >> /tmp/nginx_backup.log
    systemctl reload nginx    #重载nginx配置
    cd /backup  &> /dev/null
    if [ $? -eq 0 ]
    then
        /usr/bin/tar zcPf /backup/${nowtime}_${hostname}_nginx.tar.gz /var/log/nginx/${nowtime}_${hostname}_nginx.log 2>> /tmp/nginx_backup.log   #打包压缩将错误输出到日志
        if [ $? -eq 0 ]
        then
            echo "${nowtime}日志打包成功" >> /tmp/nginx_backup.log
        else
            echo "${nowtime}日志打包失败" >> /tmp/nginx_backup.log
        fi
    else
        mkdir -p /backup
        echo '已创建打包目录/backup' >> /tmp/nginx_backup.log
        /usr/bin/tar zcPf /backup/${nowtime}_${hostname}_nginx.tar.gz /var/log/nginx/${nowtime}_${hostname}_nginx.log 2>> /tmp/nginx_backup.log
        if [ $? -eq 0 ]
        then
            echo "${nowtime}日志打包成功" >> /tmp/nginx_backup.log
        else
            echo "${nowtime}日志打包失败" >> /tmp/nginx_backup.log
        fi
    fi
else
    echo "${nowtime}日志切割失败" >> /tmp/nginx_backup.log
fi
find /var/log/nginx/ -mtime +3 | xarges rm -rf &> /dev/null     #查找3天之前的文件删除
find /backup/ -mtime +7 | xarges rm -rf &> /dev/null             #查找7天之前的文件删除
举报

相关推荐

0 条评论