首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找到合适的备份策略(borgbackup,restic等)

找到合适的备份策略(borgbackup,restic等)
EN

Unix & Linux用户
提问于 2021-12-13 18:03:24
回答 3查看 1.7K关注 0票数 5

我完全知道,像这样的问题已经被问了好几次。然而,由于阅读了大量的各种备份工具的文档并没有回答我所有的问题,我认为在这里描述我的场景以获得一些输入是很好的。

我想开发一个适合我需要的备用策略。下面是对需求的快速概述:

  • 开源软件
  • 命令行支持(不仅仅是GUI)
  • 我想从多个设备备份和还原。(所有设备都在运行linux)
  • 我希望能够备份特定的文件/文件夹,而忽略其他文件/文件夹。
  • 我希望能够备份到多个目的地,例如:
    • 外部硬盘
    • 一些场外服务器(以防我的房子被烧毁)

  • 我想要自动备份,例如使用cron
  • 我希望备份能被正确加密
  • 我希望备份是重复的,所以,只存储到以前备份的增量。
  • 在从备份恢复时,我希望能够直接使用还原后的备份作为备份新更改的新点。(想一想git存储库,您可以在将存储库克隆到新系统后直接推动新的更改)。

在进行了一些研究之后,有两个项目在很大程度上似乎是很适合的:

使用borgbackup,我看到了两个问题:

  • 我可以通过两种方式还原文件:我可以将备份合并挂载,也可以直接提取备份。但是,在还原时,我总是只得到文件。当我将备份还原到新系统时,必须重新设置所有存储库,以便从新主机运行新备份?太不方便了。(同样:我也喜欢类似于git存储库的类似行为,在这种情况下,还原的数据/存储库可以直接用于备份(推)新数据。)
  • 我认为为备份指定多个端点是不可能的。例如,我可以将数据备份到远程服务器,但也不能与外部HDD同步。(见:https://borgbackup.readthedocs.io/en/stable/faq.html#can-i-backup-from-multiple-servers-into-a-single-repository)。在我看来,像外部硬盘一样的冷存储备份似乎不适合borg。

与restic:

  • 本质上和博格的情况是一样的。

因此,我的问题是,我如何实现一个备份解决方案,对我前面描述的场景工作。borg和restic是适合这里工作的工具吗?如果是的话,我如何处理我所描述的问题?如果没有,这里还有其他更好的备份软件吗?

EN

回答 3

Unix & Linux用户

发布于 2021-12-16 15:02:00

建立两个linux (即centos)系统并使用rsnapshot

  • 开源软件

  • 命令行支持(不仅仅是GUI)
    • 没有gui,r快照是一个简单的perl脚本,所有内容都是在/etc/rsnapshot.conf中配置的。

  • 我想从多个设备备份和还原。(所有设备都在运行linux)
    • 能行

  • 我希望能够备份特定文件/文件夹,而忽略其他文件/文件夹( )
    • 能行

  • 我希望能够备份到多个目的地,例如:外部HDD或一些场外服务器(以防我的房子烧毁) 。
    • 可以做,显然需要网际网路连接,和一些备份系统在其他地方接收。

  • 我想要自动备份,例如使用cron
    • 从cron内部调用r快照,无论您想要备份的频率如何,都非常简单

  • 我希望备份能够被正确加密,
    • 阅读r快照网站,不确定这一个。我认为,您与备份服务器之间的SSH连接将是第一级加密;如果您需要备份服务器上的“加密”所有内容,那么这是另一回事,而不一定是r快照的工作。

  • 我希望备份是重复的,所以,只存储到以前备份的增量。
    • 阅读r快照网站,如果将r快照配置为执行增量备份,则可能会提供可接受的解决方案。在linux中,可能还有其他软件可以在备份服务器上运行,以满足您的需要。

  • 在从备份恢复时,我希望能够直接使用还原后的备份作为备份新更改的新点。(想一想git存储库,您可以在将存储库克隆到新系统后直接推动新的更改)。
    • R快照基于rsync,因此备份服务器上有一个与主服务器完全相同的文件夹结构,然后如果配置NFS或备份服务器上类似的任何内容,则可以将备份文件夹结构导出回要使用的主(或任何其他)服务器。

我在一个服务器上运行r快照,它有16个驱动器位,前7个位是raid-5,安装为/data。第二个7湾是raid-5挂载为/backup,这是根的唯一访问。我将/backup导出为只读到本地主机(只有我的服务器),并在用户可以访问的/backup2文件夹下将/backup挂载为只读。文件夹/文件权限反映了数据的权限,因此,如果用户有权限这样做,他们就可以在/backup2下导航,当他们意外地删除了/data下的原始文件时,就可以复制他们想要的任何内容。在您的情况下,需要配置第二个系统来接收r快照备份。有许多关于r快照的在线文章。

票数 1
EN

Unix & Linux用户

发布于 2021-12-21 08:49:28

我认为克隆体可以满足您的所有要求:

  • 开源软件
  • 命令线支援
  • 备份到多个设备并从多个设备恢复(多个操作系统支持)
  • 备份特定文件/文件夹,忽略其他文件/文件夹
  • 备份到多个目的地(只是在一次运行中不是多个,必须与xargs或GNU并行进行组合才能实现)
  • 自动备份,例如使用cron
  • 备份可以加密
  • 只存储到前一个备份的增量(=>增量)
  • 使用还原备份作为新的备份目标

也许你想试试rclone sync src dest --backup-dir incr$(date "+%Y%m%d.%H%M%S")

正如您所提到的,git:您当然也想看看git-附件。上述各点也是对此提出的。(老实说:虽然我从多年的个人经历(至今为止从未让我失望过)知道rclone是坚如磐石的,但我至今从未尝试过git-附件,尽管它的功能看起来非常有趣)。

一般来说,它真的取决于你的环境。实际的问题是:您是否打算为多个用户和许多机器建立一个持续服务的解决方案,然后更好地使用https://unix.stackexchange.com/a/683353/118985中建议的完整的系统,并创建一个专用的备份环境。

然而,如果这是针对您的私有系统,并且只覆盖很少的计算机--我从上面的文章中怀疑--所需的管理工作和资源要小得多,而且您在使系统使用rclone运行时速度要快得多,挫折感也要少得多:在搜索路径中只有一个可执行文件,而且在大多数情况下,使用加密或云备份--在您的主目录中使用一个小配置文件,由程序创建)。

票数 1
EN

Unix & Linux用户

发布于 2021-12-21 14:04:30

我的建议是使用杆菌。我已经在相当大的范围内设置了它,使用了您所需的详细信息。虽然一开始它可能有点棘手,但是当你设置它的时候,你会很高兴的。社区也相当好。不要浪费你的时间在磨光的rsync克隆。

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

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

复制
相关文章

相似问题

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