gitlab自动备份脚本auto_backup_to_remote
2024-08-31 22:08:34
#!/bin/bash
# gitlab 服务器备份路径
LocalBackDir=/var/opt/gitlab/backups
# 远程备份服务器 gitlab备份文件存放路径
RemoteBackDir=/root/gitlab_backup
# 远程备份服务器 登录账户
RemoteUser=root
# 远程备份服务器 IP地址
RemoteIP=(备份服务器B的地址,请你自行修改)
#当前系统日期
DATE=`date +"%Y-%m-%d"`
#Log存放路径
LogFile=$LocalBackDir/log/$DATE.log
# 查找 gitlab本地备份目录下 时间为60分钟之内的,并且后缀为.tar的gitlab备份文件
BACKUPFILE_SEND_TO_REMOTE=$(find $LocalBackDir -type f -mmin -60 -name '*.tar*')
#新建日志文件
touch $LogFile
#追加日志到日志文件
echo "Gitlab auto backup to remote server, start at $(date +"%Y-%m-%d %H:%M:%S")" >> $LogFile
echo "---------------------------------------------------------------------------" >> $LogFile
# 输出日志,打印出每次scp的文件名
echo "---------------------The file to scp to remote server is: $BACKUPFILE_SEND_TO_REMOTE-------------------------------" >> $LogFile
#备份到远程服务器
scp $BACKUPFILE_SEND_TO_REMOTE $RemoteUser@$RemoteIP:$RemoteBackDir
#追加日志到日志文件
echo "---------------------------------------------------------------------------" >> $LogFile
脚本
#!/bin/bash
#gitlab bakup_directory
LocalBackDir=/var/opt/gitlab/backups
#remote bakup_directory
RemoteBackDir=/root/gitlab_backup
#remote USER
RemoteUser=root
#remote IP
RemoteIP=192.168.4.64
#date
DATE=`date +"%Y-%m-%d"`
#log directory
LogFile=$LocalBackDir/log/$DATE.log
#Find the gitlab backup file with the suffix of .tar in the gitlab local backup directory for 60 minutes.
BACKUPFILE_SEND_TO_REMOTE=$(find $LocalBackDir -type f -mmin -60 -name '*.tar*')
#New log file
touch $LogFile
#Append log to log file
echo "Gitlab auto backup to remote server, start at $(date +"%Y-%m-%d %H:%M:%S")" >> $LogFile
echo "---------------------------------------------------------------------------" >> $LogFile
#Output log, print out the file name of each scp
echo "---------------------The file to scp to remote server is: $BACKUPFILE_SEND_TO_REMOTE-------------------------------" >> $LogFile
#backup to remote server
scp $BACKUPFILE_SEND_TO_REMOTE $RemoteUser@$RemoteIP:$RemoteBackDir
#Append log to log file
echo "---------------------------------------------------------------------------" >> $LogFile
最新文章
- YII 的源码分析(二)
- 初入职场的建议--摘自GameRes
- Vim简要说明
- 不使用ajax,无刷新提交表单
- HD 1533 Going Home(最小费用最大流模板)
- Android 4.2蓝牙介绍
- css制作简单的导航栏
- JavaScript要点(七) 函数调用
- Nightmare(BFS)
- Nutch配置
- 转:Server.MapPath相关
- git变基--rebase
- Delphi基本图像处理方法汇总
- puppet的配置清单书写
- 设置input的placeholder样式
- 剑指Offer——笔试题+知识点总结
- OAuth2.0 原理简介
- [git]入门-创建版本库
- js 14位字符串 转日期
- Linux运维故障排查思路