资讯专栏INFORMATION COLUMN

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

王陆宽 / 1004人阅读

摘要:是一个基于思想的全局去重数据备份工具。传入另一个文件后,它会从之前的已备份文件中复用重复数据。命令备份一个由命令创建的文件到刚才使用初始化的备份库。

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 ~/.my_backup_password -- 使用位于~/.my_backup_password的口令文件来加密备份库和待备份文件,以及解密已备份文件。

--threads number_of_threads -- 限制并行LZMA压缩的线程数为 number_of_threads。建议在32位的系统平台使用。

--cache-size cache_size_in_mb -- 使用cache_size_in_mb中的缓存大小来加速恢复文件的过程。

上述命令中 zBackup 相关文件

~/.my_backup_password 用来加密备份库和待备份文件,以及解密已备份文件。更多细节见zbackup。

/my/backup/repo 存放备份库的目录。

/my/precious/restored-tar 用来恢复已备份文件的tar文件。

/my/backup/repo/backups/backup-date ‘+%Y-%m-%d" 指定的之前已备份文件的文件名。


via: http://www.ubuntugeek.com/zba...

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

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

付费解决 Windows、Linux、Shell、C、C++、AHK、Python、JavaScript、Lua 等领域相关问题,灵活定价,欢迎咨询,微信 ly50247。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/15132.html

相关文章

  • [] zBackup一个功能去重备份工具

    摘要:是一个基于思想的全局去重数据备份工具。传入另一个文件后,它会从之前的已备份文件中复用重复数据。命令备份一个由命令创建的文件到刚才使用初始化的备份库。 zbackup是一个基于rsync思想的全局去重数据备份工具。给它传入一个大的tar文件后,它会仅存储一次该文件的重复部分,然后对结果进行压缩,并根据参数确定是否对其加密。传入另一个tar文件后,它会从之前的已备份文件中复用重复数据。只有...

    lpjustdoit 评论0 收藏0
  • 跟underscore一起学数组去重

    摘要:引子数组去重是一个老生常谈的话题,在面试中也经常会被问道。其中如果数组是排序的,去重运算效率更高,因为排序能够将相同的数排列在一起,方便前后比较。当数组有序对于对象的去重,我们知道为,所以使用比较对象在实际场景中没有意义。 引子 数组去重是一个老生常谈的话题,在面试中也经常会被问道。对于去重,有两种主流思想: 先排序,线性遍历后去重,时间复杂度O(n*log2n); 使用哈希,空间换...

    flybywind 评论0 收藏0
  • JavaScript专题之数组去重

    摘要:专题系列第三篇,讲解各种数组去重方法,并且跟着写一个前言数组去重方法老生常谈,既然是常谈,我也来谈谈。它类似于数组,但是成员的值都是唯一的,没有重复的值。 JavaScript 专题系列第三篇,讲解各种数组去重方法,并且跟着 underscore 写一个 unique API 前言 数组去重方法老生常谈,既然是常谈,我也来谈谈。 双层循环 也许我们首先想到的是使用 indexOf 来循...

    fsmStudy 评论0 收藏0
  • 【前端芝士树】如何完成数组去重 Array Unique?

    摘要:前端芝士树如何完成数组的去重输入推荐方法其他方法利用实现数据的去重 【前端芝士树】如何完成数组的去重 Array Unique? 输入 const users = [{ id: 1, name: a }, { id: 2, name: a }, { id: 3, name: b }, { id: 4, name: v }]; 推荐方法 Array.prototype.u...

    doodlewind 评论0 收藏0
  • 】更快的方式实现PHP数组去重

    摘要:原文来自原文概述使用的函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组。有一个比较好而且更快的函数来替代使用函数来创建唯一的数组。 原文来自:http://www.hoohack.me/2016/01/11/faster-way-to-phps-array-unique-function/ 原文:Faster Alternative to PHP’s Array Un...

    岳光 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<