2021年9月

每天切割日志

创建脚本,文件名为:/data/scripts/backupWebLog.sh

#/bin/bash
NGINX_PATH=/etc/nginx/
LOG_PATH=/var/www/logs/
NGINX_PID=/run/nginx.pid
YESTERDAY=`date +%F -d -1day`
cd $LOG_PATH
for logName in `ls ./ | grep .log`
    do
        logPath=`echo $logName|awk -F'-[a-z]+.log' '{print $1}'`
        fileType=`echo $logName|awk -F$logPath'-' '{print $2}'`
        logPathR=${LOG_PATH}${logPath}
        if [ ! -d $logPathR ];then
            mkdir $logPathR
        fi
        fileName=${logPathR}/${YESTERDAY}-${fileType}
        if [ -f $fileName ];then
            rm -f $fileName
        fi
        mv $logName $fileName
    done
kill -USR1 `cat ${NGINX_PID}`

启动定时任务进行每日切割

crontab -e
0 0 *  * *  /data/scripts/backupWebLog.sh

数据库备份

创建脚本文件: /data/scripts/backupDB.sh

#/bin/bash
mysqldump -uroot -proot --all-databases > /var/backup/db/`date  +%Y%m%d-%H%M%S`.sql

赋予执行权限

chmod a+x /data/scripts/backupDB.sh

创建定时任务

crontab -e
0 */8 * * * /data/scripts/backupDB.sh