zBackup:一个多功能的去重备份工具

2015-05-27
2分钟阅读时长

zbackup是一个基于rsync思想的全局去重数据备份工具。给它传入一个大的tar文件后,它会仅存储一次该文件的重复部分,然后对结果进行压缩,并根据参数确定是否对其加密。传入另一个tar文件后,它会从之前的已备份文件中复用重复数据。只有新的改动会被保存,并且只要文件差异不是很大,需要的存储空间非常少。无论何时,之前的已备份文件都可以被完整地读出来。

zBackup特性

  • 使用并行的LZMA或者LZO压缩算法压缩已备份数据
  • 使用内置的AES加密算法加密已备份数据
  • 可以删除旧的已备份数据
  • 使用一个64位滚动哈希,保持软碰撞数量为0
  • 备份库由不可更改的文件组成,只有库中不存在的文件才能修改
  • 使用C++语言编写,并且只有适量的依赖库
  • 可以在生产环境安全使用
  • 可以在不同备份库中交换数据而无需重新压缩

在ubuntu中安装zBackup

打开终端并运行如下命令:

sudo apt-get install zbackup

使用zBackup

zbackup init命令会初始化一个备份库,用来存放待备份的数据。

zbackup init [--non-encrypted] [--password-file ~/.my_backup_password ] /my/backup/repo

zbackup backup命令备份一个由tar c命令创建的tar文件到刚才使用zbackup init初始化的备份库。(LCTT 译注:实际使用时类似这样,tar c files | zbackup …)

zbackup [--password-file ~/.my_backup_password ] [--threads number_of_threads ] backup /my/backup/repo/backups/backup-`date ‘+%Y-%m-%d'`

zbackup restore命令从备份库中恢复一个已备份文件到tar文件中。

zbackup [--password-file ~/.my_backup_password ] [--cache-size cache_size_in_mb ] restore /my/backup/repo/backups/backup-`date ‘+%Y-%m-%d'` > /my/precious/backup-restored.tar

可用选项

  • -non-encrypted – 不加密备份库。
  • –password-file ~/.mybackuppassword – 使用位于~/.mybackuppassword的口令文件来加密备份库和待备份文件,以及解密已备份文件。
  • –threads numberofthreads – 限制并行LZMA压缩的线程数为 numberofthreads。建议在32位的系统平台使用。
  • –cache-size cachesizeinmb – 使用cachesizeinmb中的缓存大小来加速恢复文件的过程。

上述命令中 zBackup 相关文件

  • ~/.mybackuppassword 用来加密备份库和待备份文件,以及解密已备份文件。更多细节见zbackup。
  • /my/backup/repo 存放备份库的目录。
  • /my/precious/restored-tar 用来恢复已备份文件的tar文件。
  • /my/backup/repo/backups/backup-date ‘+%Y-%m-%d' 指定的之前已备份文件的文件名。

via: http://www.ubuntugeek.com/zbackup-a-versatile-deduplicating-backup-tool.html

作者:ruchi 译者:goreliu 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出