392
阿里云
adup备份管理__最佳实践_归档存储-阿里云
简介
adup是基于开源备份工具duplicity( https://www.nongnu.org/duplicity/ ),使用python语言实现,支持文件全量增量备份,支持小文件打包合并,提供了阿里云归档存储的备份工具。duplicity本身是一个多功能本地和远程的备份软件,支持多种后端存储介质如ftp、ssh和各类云存储。同时adup参照 https://github.com/thornomad/dt-s3-backup 进行优化封装,方便进行定时任务的配置。
工具下载
特性
- 简单易用的命令行使用方式
- 使用rsync对变化数据进行增量备份,提高带宽和存储的高效利用
- 使用标准文件打包压缩格式GNU-tar,能够对增量数据进行追加
- 多种远程存储方式的支持,阿里云归档存储,AWS等
安装
debian发行版本
sudo bash deploy_debian.sh
redhat/centos发行版本
sudo bash deploy_rh.sh
安装完成以后,备份脚本dt-oas-backup.sh 存放在/usr/local/bin/下。
使用步骤
配置
配置可执行文件dt-oas-backup.sh,可参照如下配置项示例修改
# 在redhat/centos发行版本中需要设置,debian环境中可以将其注释
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
# 阿里云归档存储和OSS账号信息
export AliCLD_OAS_HOST="alicloud_oas_host"
export AliCLD_OSS_HOST="alicloud_oss_host"
export AliCLD_ACCESS_
export AliCLD_ACCESS_KEY="alicloud_access_key"
# 签名
export PASSPHRASE="gpg_passphrase"
# 备份目录
ROOT="/home/"
# 远程阿里云归档存储vault
DEST="oas+https://oas-backup-101"
# 匹配包含的备份路径
# > 注:INCLIST的路径不要以'/'结束,否则只会上传目录结构而没有真实文件内容
INCLIST=( "/home" )
# 匹配排出的备份路径
EXCLIST=( "/home/xuser" )
# 日志存放目录
LOGDIR="/tmp/"
# duplicity可执行文件路径,一般在python所在路径的bin目录下
DUPLICITY="path_to_python/bin/duplicity"
执行
- 全量备份
bash dt-oas-backup.sh --full
注:第一次执行备份时,建议执行全量备份。
- 增量备份
bash dt-oas-backup.sh --backup
- 校验备份集
bash dt-oas-backup.sh --verify
Verify complete. Check the log file for results:
>> /tmp/duplicity-2015-11-19_10-02.txt
- 列出备份文件列表
bash dt-oas-backup.sh --list-current-files
Local and Remote metadata are synchronized, no sync needed.
Last full backup date: Thu Nov 19 10:01:32 2015
Wed Oct 21 10:12:14 2015 .
Tue Oct 20 15:28:23 2015 core
Mon Aug 31 09:44:12 2015 core/__init__.py
Wed Aug 19 09:51:05 2015 core/asyncoro.py
Mon Sep 28 17:20:57 2015 core/job.py
Wed Aug 19 16:29:09 2015 core/policy.py
Wed Aug 19 21:03:34 2015 core/resource.py
Wed Sep 23 10:33:42 2015 core/scan.py
- 恢复单个文件
在源文件保留的前提下,可以进行MD5进行校验
bash dt-oas-backup.sh --restore-file core/job.py /tmp/j.py
YOU ARE ABOUT TO...
>> RESTORE: core/job.py
>> TO: /tmp/j.py
Are you sure you want to do that ('yes' to continue)?
yes
Restoring now ...
- 设置cron定时任务
以每天凌晨2点进行备份为例
crontab -e
0 2 * * * bash /usr/local/bin/dt-oas-backup.sh --backup
最后更新:2016-11-23 17:16:04
上一篇:
Java SDK实例程序__最佳实践_归档存储-阿里云
下一篇:
归档存储__常见问题_-阿里云
如何进行线下汇款或公对公转账?__充值介绍_账户资产_财务-阿里云
管理Bucket__Java-SDK_SDK 参考_对象存储 OSS-阿里云
grpc-java 1.7.0 发布;GitHub发布2017年度数据报告;阿里云发布多款产品,降价高达53%
资源管理__用户指南_企业级分布式应用服务 EDAS-阿里云
访问秘钥__API-Reference_日志服务-阿里云
数据库激荡40年,阿里云自研数据库的中国故事
阿里云发布新一代数据库产品POLARDB,跑分超越AWS Aurora
C__客户端连接实例_快速入门_云数据库 Memcache 版-阿里云
作业操作__作业_用户指南_E-MapReduce-阿里云
1.1 登陆ECS实例__ECS快速开始_云服务器ECS 体验_体验馆-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云