脚本如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| #!/bin/bash . ~/.bash_profile #日志目录 LOG_PATH=/home/ap/product/logs PRODUCTLOG="product_105infologs" NASBACKUP=/home/ap/nas/product/PRODUCT_101/logs TO_IP=192.168.1.1
#文件打包 cd $LOG_PATH find -name info-`date -d '-5 day' +%Y-%m-%d`*.log > $LOG_PATH/backup_list.txt find -name warn-`date -d '-5 day' +%Y-%m-%d`*.log >> $LOG_PATH/backup_list.txt find -name error-`date -d '-5 day' +%Y-%m-%d`*.log >> $LOG_PATH/backup_list.txt tar -T backup_list.txt -czvf $PRODUCTLOG.`date -d '-5 day' +%Y-%m-%d`.tar.gz echo "File tar success!" #文件传输 sftp root@$TO_IP <<EOF lcd $LOG_PATH cd $NASBACKUP -mput $PRODUCTLOG.`date -d '-5 day' +%Y-%m-%d`.tar.gz quit EOF echo "File put success!"
#文件删除 #删除 备份过的日志 cat backup_list.txt | xargs rm -rf #删除 备份包 rm -f $PRODUCTLOG.`date -d '-5 day' +%Y-%m-%d`.tar.gz #删除 备份日志列表 rm -f backup_list.txt echo " File delete success!" exit 0
|
必要步骤:
1、192.168.1.1 此机器上建立备份文件存放目录
1
| mkdir - p /home/ap/nas/product/PRODUCT_105/logs
|
2、应用机器到192.168.1.1 需配置免密
3、应用机器定时任务配置
1
| 45 23 * * * sh /root/initsh/sftpproduct101.sh 1>/tmp/product101.out 2>&1
|