首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >远程运行borg解压缩

远程运行borg解压缩
EN

Unix & Linux用户
提问于 2018-05-16 21:57:38
回答 1查看 1.7K关注 0票数 2

假设已经对位于/mnt/backup on server上的远程存储库进行了备份。

对于非Borg用户,存储库由多个档案组成。每次备份时都会创建一个归档文件。现在,假设我想提取一个特定的存档--为了简单,最近的一个。

我目前这样做的方式是从远程存储库获取一个档案列表,然后将它们的名称存储在一个mailarchives数组中。看上去像是:

代码语言:javascript
复制
mapfile -t mailarchives < <(borg list --short 'faheem@server:/mnt/backup')  

然后,我从mailarchive[-1] (最近的归档文件)中提取所有文件,以验证归档文件是否有效,并且可以从中恢复。看上去像是:

代码语言:javascript
复制
borg extract -n 'faheem@server:/mnt/backup'::"${mailarchives[-1]}"

然而,这使用了大量的数据在本地复制所有的东西。因此,我的问题是,是否有可能远程完成所有这些工作,并且只通过ssh在本地传输结果(无论成功还是失败)。我认为这应该是可能的,但我不知道具体是怎么做到的。

一个更简单的例子是

代码语言:javascript
复制
borg check faheem@server:/mnt/backup

因为某种原因也会消耗大量的数据。

而且,尽管表面上看,这个问题实际上并不是Borgbackup的具体问题。它可以更广泛地表述为:如果我想在远程机器上运行一次检查,但如果我想在本地运行检查,通常需要在本地下载大量数据,那么我能否远程运行此检查,并将成功或失败的结果传递给本地?

最后,Borg的主要/主要开发人员给出了一个说明:

ThomasWaldmann>错误: borg在成功时返回0,在警告时返回1,在错误时返回2。

EN

回答 1

Unix & Linux用户

发布于 2018-11-11 08:22:24

如果borg check是您想要的,那么您不能仅仅在server上运行它来避免巨大的数据传输吗?也许我对你想要达到的目标感到困惑。看起来会是这样的:

代码语言:javascript
复制
ssh faheem@server
screen # so you can resume after disconnect (optional)
borg check /mnt/backup

另一方面,如果您想亲自验证这些文件,而不是相信Borg关于这些文件没有问题的断言,您可以:

  • 到服务器的ssh
  • 将存档解压缩到服务器上的临时目录(因此它将使用服务器存储,而不使用上载/下载数据)
  • 使用像hashdeep这样的工具来计算每个文件的散列
  • 删除服务器上的临时目录
  • 下载散列文件
  • 将散列与实际文件进行比较。

如果我的建议离我很远,也许你可以为我澄清你想做什么。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/444250

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档