linux下项目自动化备份

#! /bin/bash
# 日期: 20220927
# 执行环境: 192.168.25.38
# 功能: 每周自动备份/data下"elasticsearch|project|software"的数据
# 描述: 此脚本每周一执行一次, 自动删除超过7天的备份数据
# 制作人: ZL

#定义日期变量和备份路径
now=$(date "+%Y%m%d")
backup_dir="/home/25.38_backup"
 
#拷贝到备份目录&&打包压缩
mkdir -p ${backup_dir}/tmp
cp -a /data/elasticsearch ${backup_dir}/tmp
cp -a /data/project ${backup_dir}/tmp
cp -a /data/software ${backup_dir}/tmp
zip -qr ${backup_dir}/10.35-${now}.zip ${backup_dir}/tmp
rm -rf ${backup_dir}/tmp

#删除超过7天的数据
rm -f ${backup_dir}/25.38-$(date -d -7day +%Y%m%d).zip

#创建周备份目录和拷贝备份到远程备份服务器, "Remote-Backup"为远程挂载目录
mkdir -p /Baiinfo-Backup/${now}
cp ${backup_dir}/25.38-${now}.zip /Remote-Backup/${now}

echo ${now}",25.38服务器周度数据备份完毕!"

#############脚本搭配"crontab -e"###########
#示例:
#.---------------- 分钟 (0 - 59)
#| .------------- 小时 (0 - 23)
#| | .---------- 日期 (1 - 31)
#| | | .------- 月份 (1 - 12) OR jan,feb,mar,apr ...  (禁止与周几同时定义)
#| | | | .---- 星期几/周几 (0 - 6) (周日=0 or 7) OR sun,mon,tue,wed,thu,fri,sat  (禁止与月份同时定义)
#| | | | |
#* * * * * 命令
#项目周一备份 
#0 2 * * 1 /home/25.38_week_backup.sh >> /home/25.38_backup/25.38_week_backup.log

 

posted @ 2022-10-31 15:29  天海沙  阅读(35)  评论(0编辑  收藏  举报