CloudBerry Backup for Linux:配置和运行备份以保护您的数据
基于云的备份解决方案已顺风顺水。今天我将回顾一下适用于 Linux 的 CloudBerry Backup。它是 CloudBerry Lab 为“企业和个人使用”提供的解决方案。
该工具提供 GUI 和 CLI 界面。 GUI 界面相当直观,您可以通过滚动产品页面看到。因此,我决定今天在审查该产品时重点关注命令行界面。不管怎样,这就是我在“公司”环境中使用它来管理服务器上的备份,或者通过 ssh 远程工作时的方式。
获取 Linux 版 CloudBerry 备份
CloudBerry Backup for Linux 可以从编辑器网站免费下载。但在获得许可证之前,您将无法执行备份。但不要惊慌:您无需为此付费,因为有免费许可证可用。
Linux 版本比 Windows 版本便宜得多,甚至作为个人使用的“免费软件”。当前可用的版本是(直接从网站复制):
免费软件版本:仅供个人使用。具有 PRO 版本的大部分功能,例如灵活的调度程序和保留策略。
专业版:具有高级功能:压缩和加密。单个永久许可证的价格为 29.99 美元。
终极版本:没有存储限制。
作为补充,值得一提的是“免费”版本的存储限制低至 200GB。但“Pro”版本的筹集金额为 5TO,“Ultimate”版本的筹集金额不受限制。这些限制是由软件强制执行的限制。独立于存储提供商施加的最终存储限制。
说到这里,CloudBerry只提供备份解决方案。购买或租用实际存储空间取决于您。因此,如果许可证价格是每台计算机的“一次性费用”,您必须添加存储价格来估算该解决方案的总拥有成本。
通过付费许可证,您可以在一年内免费访问该软件的所有更新。在此之后,您将需要额外支付 20% 的费用才能再升级一年。
据我了解,您始终可以使用“免费许可证”来恢复您的数据。因此,最后,只有当您计划使用该产品进行相对较大的备份或需要加密等高级功能时,您才需要付费。
对于本次审查,我们已获得免费许可证。根据我收到的包含许可证密钥的电子邮件,它适用于“CloudBerry Backup for Linux Standard Edition”。我只能假设“标准版”实际上是网站上描述的“专业版”。
检查设置
在本次评测中,我使用了全新且最小的 Debian 9.0 系统,该系统在具有 4GB 或 RAM 的虚拟机上运行。该系统被设置为运行 NFS 的文件服务器,并保存 6.5GB 的数据,并具有各种大小和类型的文件的典型分布。
此外,我还设置了一个类似的恢复目标,但没有数据,以便检查 CloudBerry Backup 在灾难后恢复另一台计算机上的数据的能力。我们将在文章末尾尝试这样做。
对于备份存储,我使用了本地安装的磁盘和 Google Cloud Storage 存储桶。
安装
从CloudBerry网站,您可以下载Ubuntu 12/14/16、Suse 11/12、Red Hat-CentOS 6.x/7.x和Fedora 12/21的软件二进制包。
由于我使用的是正版 Debian 系统,我的猜测是 Ubuntu 版本可以工作。
linux:~# dpkg -i ubuntu14_CloudBerryLab_CloudBerryBackup_v2.0.2.39_20170620155447.deb
[...]
/opt/local/CloudBerry Backup/raw_bin/cbbUpdater: error while loading shared libraries: libgthread-2.0.so.0: cannot open shared object file: No such file or directory
好的:下次我将在最小系统上安装 CloudBerry Backup 时,我必须记住首先安装 libglib2.0-0
(其中包含缺少的库文件 libgthread-2.0.so。 0
)
linux:~# apt-get install -y libglib2.0-0
linux:~# dpkg -i ubuntu14_CloudBerryLab_CloudBerryBackup_v2.0.2.39_20170620155447.deb
这次它起作用了:
linux:~# ps -edf | grep CloudBerry
root 1301 1 0 15:33 ? 00:00:00 /opt/local/CloudBerry Backup/raw_bin/cbbLocalManagement
root 1328 442 0 15:33 pts/0 00:00:00 grep CloudBerry
您会找到的有关 CloudBerry Backup 的大多数文档都会介绍 GUI 工具。包括官方安装和配置指南。事实上,考虑到可用选项的数量,使用 GUI 可能是使用和配置该工具的最简单方法。但我将无法在我的测试系统中使用 GUI。无论如何,在实际情况下,我不会仅仅为了配置备份策略而在服务器上安装 GUI。希望 Cloud Berry Backup 也提供命令行界面:
linux:~# ls /opt/local/CloudBerry\ Backup/bin/
cbb cbbCommandLine cbbgui cbbGUI cbbLocalManagement cbbUpdater cbbWorker
我不知道为什么,但在我的安装中,有两个相同的脚本来运行 CLI:
linux:.../CloudBerry Backup/bin# diff -s cbb cbbCommandLine
Files cbb and cbbCommandLine are identical
从现在开始,我将使用官方文档中暗示的 cbb
。
许可证激活
CloudBerry Lab 在其网站上提供了有关 cbb
命令行使用情况的一些信息。虽然文档不是很详细。尽管如此,基于此以及一些试验和错误,以下是我如何从系统上的命令行设置cbb
。
在使用 cbb
之前您必须做的第一件事是获取并激活您的许可证密钥。
linux:~# cd /opt/local/CloudBerry\ Backup/bin
linux:.../CloudBerry Backup/bin# ./cbb activatelicense -h
CloudBerry Backup Command Line Interface started
activateLicense -e Email < <-k License key | -t LicenseType > [-or | -oa ActivationKey] > | -free <-un userName | -oa ActivationKey> >
-e Email : Email for license activation
-k License key : Key for license activation
-t License type : Request trial license. Possible values: pro, ultimate
-free : Request free license
-un userName : User name to register free license
-or : Generate offline license request. Email & key are required. Request should be send via email to [email .
-oa ActivationKey : Offline license activation key. You should receive this key via email in response to offline request, or free license registration.
内联帮助以及上面提到的官方文档解释了如何直接从 cbb
命令行工具请求许可证。就我自己而言,我已经通过电子邮件收到了许可证密钥。所以我只需要安装该许可证:
# Use your own license key instead of the X's below:
linux:.../CloudBerry Backup/bin# ./cbb activatelicense \
-k "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
CloudBerry Backup Command Line Interface started
Success
备份类型
截至目前,Linux 版本的 CloudBerry Backup 仅支持文件级备份。这意味着您无法逐块备份整个磁盘,而只能备份您指定的文件和文件夹。也就是说,只能备份已挂载的分区/磁盘,不能备份非 FS 分区。但对于大多数用户来说,这不是问题。 Windows 版本提供块设备备份。但目前在 Linux 上,您对原始块设备的最好期望就是尝试备份相应的 /dev 条目。但我没有对此进行测试,所以我什至不确定这是否有效,而且您当然不能以这种方式对磁盘进行增量或差异备份。因此,如果您有关于该主题的更多信息,请随时使用下面的评论部分分享。
CloudBerry Backup 核心使用情况
要使用 CloudBerry Backup,您必须了解两个主要概念:
帐户
和计划
“帐户”是 CloudBerry Backup 中为存储服务指定的通用名称(文件系统位置、Amazon S3 或 Google Cloud Storage 存储桶……)。您必须配置至少一个“帐户”才能执行备份/恢复操作。
“计划”是一种备份/恢复策略,指定备份或恢复数据的内容、时间和方式。每个计划必须与一个且仅一个“帐户”相关联。
创建存储区域帐户
因此,在执行任何备份之前要做的第一件事是创建一个帐户。首先,我使用了“文件系统”帐户。那是一个本地连接的存储区域。就我而言,它是安装在 /backup
上的第二个(虚拟)磁盘
linux:.../CloudBerry Backup/bin# ./cbb addAccount \
-st FileSystem \
-d "Local Backup" \
-c "/backup"
CloudBerry Backup Command Line Interface started
Success
创建备份计划
接下来,我必须创建一个备份计划。备份计划将指定备份操作的各种细节。包括目标和时间表。
linux:.../CloudBerry Backup/bin# ./cbb addBackupPlan \
-n "NFS files" \
-a "Local Backup" \
-f /srv/nfs \
-bef -es no \
-every day -at "22:56"
CloudBerry Backup Command Line Interface started
Success
-n "NFS files"
是备份计划的(任意)名称-a“本地备份”
是上面创建的帐户名称,该帐户将与该计划关联。-f /srv/nfs
是我要备份的目录。您可以在同一备份计划中指定多个-f
选项,为要备份的每个文件或目录树指定一次。-bef
是备份空文件夹的选项。-es no
这个很难理解:根据我撰写本文时的文档,它用于不排除系统文件。但是,现在应该在文档中修复此问题 - 如果将-es
设置为yes
(其默认值),该计划也会从备份中排除隐藏文件。这意味着名称以点开头的文件/文件夹不会出现在备份中。但使用-es no
他们会的。-every day -at "22:56"
非常不言自明。
当天22点56分……备份开始了。经过很长很长的分钟,备份终于完成了。
之后,我有点希望在 /backup 文件夹中找到一个大的存档文件。但事实上,CloudBerry 备份看起来就像是源树的简单副本:
linux:.../CloudBerry Backup/bin# find /backup | head
/backup
/backup/lost+found
/backup/CBB_linux
/backup/CBB_linux/srv
/backup/CBB_linux/srv/nfs
/backup/CBB_linux/srv/nfs/sample
/backup/CBB_linux/srv/nfs/sample/gcc-4.6.3
但事情有点微妙。事实上,在备份中,每个文件都被一个目录替换,该目录包含由不同备份生成的文件的各个版本。
我通过修改文件并强制重新启动备份来检查:
# Create a dummy file and start a backup
linux:.../CloudBerry Backup/bin# echo hello > /srv/nfs/some_file
linux:.../CloudBerry Backup/bin# ./cbb plan -r "NFS files"
CloudBerry Backup Command Line Interface started
Success
# Wait for completion, then alter the file, and restart the backup
linux:.../CloudBerry Backup/bin# echo world > /srv/nfs/some_file
linux:.../CloudBerry Backup/bin# ./cbb plan -r "NFS files"
CloudBerry Backup Command Line Interface started
Success
值得一提的是,这些备份比第一个备份花费的时间要少得多,因为 CloudBerry Backup 仅复制实际修改的文件。事实上,我现在在 /backup
目录中拥有两个版本,每个版本都与给定的时间戳相关联。
linux:.../CloudBerry Backup/bin# find /backup/CBB_linux/srv/nfs/some_file: -type f
/backup/CBB_linux/srv/nfs/some_file:/20170730220336/some_file
world
/backup/CBB_linux/srv/nfs/some_file:/20170730215602/some_file
hello
恢复备份
引用一句著名的智慧的话,“你不需要备份计划,而是恢复计划,包括测试”。。因此,我强烈鼓励您测试 CloudBerry Backup 提供的各种恢复选项。
就像备份一样,在运行恢复操作之前,您必须创建一个“恢复计划”。这次,使用 addRestorePlan
命令。以下是一些可能的变化:
linux:.../CloudBerry Backup/bin# ./cbb addRestorePlan \
-n "Restore Missing" \
-a "Local Backup" \
-f /srv/nfs \
-se yes \
-ol yes
大多数命令选项都类似于 addBackupPlan 命令的选项。但除此之外,您还会在这里找到:
-se
选项,用于在恢复数据时跳过现有文件。-ol
标志用于将数据恢复到原始位置。
linux:.../CloudBerry Backup/bin# ./cbb addRestorePlan \
-n "Restore All" \
-a "Local Backup" \
-f /srv/nfs \
-se no \
-ol yes
在第二个变体中,我将 -se
设置为 no
来……不跳过现有文件。实际上,这将用备份中的对应文件覆盖目标中的所有文件。
linux:.../CloudBerry Backup/bin# ./cbb addRestorePlan \
-n "Restore At" \
-a "Local Backup" \
-rt PointInTime \
-pointintime "30.07.2017 22:00" \
-f /srv/nfs \
-se no \
-ol yes
作为第三种变体,您还可以恢复给定日期的数据。为此,您需要使用PointInTime
模式(默认模式是恢复最新数据)。当然,这些只是几个例子。所有组合都是可能的。包括计划的恢复操作。但我把它留给你自己的实验。
现在,让我们测试并比较上面的三个选项:
# My "Restore Missing" plan will restore deleted files
linux:.../CloudBerry Backup/bin# rm /srv/nfs/some_file
linux:.../CloudBerry Backup/bin# ./cbb plan -r "Restore Missing"
# Wait for completion
linux:.../CloudBerry Backup/bin# cat /srv/nfs/some_file
world
# My "Restore Missing" plan will NOT overwrite existing files
linux:.../CloudBerry Backup/bin# echo modified > /srv/nfs/some_file
linux:.../CloudBerry Backup/bin# ./cbb plan -r "Restore Missing"
# Wait for completion
linux:.../CloudBerry Backup/bin# cat /srv/nfs/some_file
modified
# My "Restore All" plan will happily overwrite all modified files
# by the latest version available in the backup
linux:.../CloudBerry Backup/bin# ./cbb plan -r "Restore All"CloudBerry Backup Command Line Interface started
# Wait for completion
linux:.../CloudBerry Backup/bin# cat /srv/nfs/some_file
world
# My "Restore At" plan will happily overwrite all modified files
# by the version available at the "Point in Time"
linux:.../CloudBerry Backup/bin# ./cbb plan -r "Restore At"
CloudBerry Backup Command Line Interface started
Success
# Wait for completion
linux:.../CloudBerry Backup/bin# cat /srv/nfs/some_file
hello
加密
目前,我仅使用明文备份。现在是时候检查该工具的加密功能了。就像压缩一样,加密仅适用于付费用户。并且不能与该工具的免费版本一起使用。
使用加密并不比在创建备份计划时添加 -ea
和 -ep
选项更多的工作:
linux:.../CloudBerry Backup/bin# ./cbb addBackupPlan \
-n "Backup Encrypted" \
-a "Local Backup" \
-f /srv/nfs \
-ea AES_256 -ep p@sswd
CloudBerry Backup Command Line Interface started
Success
linux:.../CloudBerry Backup/bin# ./cbb getPlanDetails \
-n "Backup Encrypted"
CloudBerry Backup Command Line Interface started
Name : Backup Encrypted
Type : Backup
ID : {9c00b94c-03b1-4a4b-818a-73abd0eb44e9}
Destination ID : {1137a608-94bd-48a2-ad0b-018c0e6965e5}
Destination name : Local Backup
Backup items:
/srv/nfs
Compress : false
Exclude system folders: true
Encryption : true
Encryption algorithm : AES_256
Schedule : Not specified
linux:.../CloudBerry Backup/bin# ./cbb plan -r "Backup Encrypted"
启用加密后,CloudBerry Backup 的行为基本相同,但它不是将纯数据文件存储到备份目录中,而是使用某种专有的二进制格式存储文件内容。文件内容当然不是明文,但由于我无权访问底层文件格式,因此很难说它是否按照我的要求正确编码为 AES_256,也很难说使用了哪种确切模式(EBC、CTC、点击率,...)
我很有信心,因为 cbbWorker
与 libcrypto.so.1.0.0 链接。但由于该库是随产品一起提供的,并且该产品是闭源的,所以我无法确定。
我只能说,数据似乎已被加密,因为生成的文件的熵非常接近每字节 8 位:
# Create 1MB file full of NUL bytes
linux:.../CloudBerry Backup/bin# dd if=/dev/zero \
of=/srv/nfs/_zero \
bs=1M count=1
# Perform an encrypted backup
linux:.../CloudBerry Backup/bin# ./cbb plan -r "Backup Encrypted"
# wait, wait, wait until completion, then check ciphertext entropy:
linux:.../CloudBerry Backup/bin# ent /backup/CBB_linux/srv/nfs/_zero\:/20170731133530/_zero
Entropy = 7.999839 bits per byte.
为加密备份创建恢复计划更加简单,因为您只需添加 -ep
选项来指定密码。
即使如此简单,我也借此机会在以下示例中介绍了其他几个选项:
-f /srv/nfs/_zero
仅恢复该文件-ol no -de /tmp/
恢复到/tmp/
而不是原始位置
linux:.../CloudBerry Backup/bin# ./cbb addRestorePlan \
-n "Restore Encrypted" \
-a "Local Backup" \
-f /srv/nfs/_zero \
-se no \
-ep p@sswd \
-ol no -de /tmp/
CloudBerry Backup Command Line Interface started
Success
linux:.../CloudBerry Backup/bin# ./cbb plan -r "Restore Encrypted"
CloudBerry Backup Command Line Interface started
Success
# Wait for completion
linux:.../CloudBerry Backup/bin# diff -s /tmp/_zero /srv/nfs/_zero
Files /tmp/_zero and /srv/nfs/_zero are identical
使用云存储
到目前为止,我只使用本地备份。但 CloudBerry Backup 的真正优势在于它与各种云存储提供商的集成:
linux:.../CloudBerry Backup/bin# ./cbb addAccount
CloudBerry Backup Command Line Interface started
addAccount -st StorageType
-st storageType: for more info select one storage type
storageTypes:
- AmazonS3
- AmazonS3Chinese
- S3Compatible
- CenturyLink
- Cloudian
- DreamObjects
- Scality
- ThinkOn
- Verizon
- Wasabi
- Azure
- Openstack
- HPCloud
- HPHelion
- Rackspace
- OracleCloud
- SoftLayer
- Google
- BackBlaze
- FileSystem
-h show help
在本文中,我使用了 Google Cloud Storage 帐户:
linux:.../CloudBerry Backup/bin# ./cbb addAccount \
-d "Google Account" \
-st Google \
-ac 'GOOG0123456789012345' \
-sk 'ABCD+01234567890123456789012345678901234' \
-c '69065e24-761d-11e7-ac42-738017d4f6c6' \
-ssl
CloudBerry Backup Command Line Interface started
Success
在该设置中: – -ac 'GOOG0123456789012345'
是我的 Google Storage“可互操作存储访问密钥”, – -sk 'ABCD+01234567890123456789012345678901234'
是关联的密钥,- -c '69065e24-761d-11e7-ac42-738017d4f6c6'
是存储桶名称(我使用了 UUID,因为在 Google 上存储桶名称必须是全局唯一的)
完成后,创建备份和恢复计划与使用本地文件系统时完全相同:
linux:.../CloudBerry Backup/bin# ./cbb addBackupPlan \
-n "Google Backup" \
-a "Google Account" \
-f /srv/nfs/sample/My\ Courses
CloudBerry Backup Command Line Interface started
Success
linux:.../CloudBerry Backup/bin# ./cbb plan -r "Google Backup"
CloudBerry Backup Command Line Interface started
Success
恢复 — 在另一台计算机上
最后,为了结束 CloudBerry Backup 功能之旅,我想测试一个非常常见的场景(如果您必须在灾难后进行恢复):在不同计算机上恢复数据。
因此,在一个干净的新创建的系统上,我安装了另一个版本的 CloudBerry Backup。但这一次,它将是免费版本。这意味着我必须首先获得一个免费密钥:
yesik:.../CloudBerry Backup/bin# ./cbb activateLicense \
-e "[email " \
-free \
-un "Sylvain Leroux"
CloudBerry Backup Command Line Interface started
Success. Your registration key has been sent to the email address [email
事实上,我收到了一封电子邮件,并将许可证密钥复制粘贴到下一个命令中以激活许可证:
# Of course, you will have to use your own key in the command below
# This one is just a fake example
yesik:.../CloudBerry Backup/bin# ./cbb activateLicense \
-e "[email " \
-free \
-oa 'ljLXMSocj5Gwx8IsmKxxXlHjIpeu6w4p/4akKOP75IVQLtaw8bOvioxLtOSAdzHtiSQUU6jvU5WS1eWaRp/2deiWMyWvvKrydahnF8yiM604GxR5s4gfR87edVmWsY0gVwK+J48Xx0ScQ8f+ou8e6wmwBK6+k+hj0lfRfC9Fzg4='
CloudBerry Backup Command Line Interface started
Success
从现在开始,工作流程与在原始主机上恢复数据的工作流程几乎完全相同:
yesik:.../CloudBerry Backup/bin# ./cbb addAccount \
-d "Google Account" \
-st Google \
-ac 'GOOG0123456789012345' \
-sk 'ABCD+01234567890123456789012345678901234' \
-c '69065e24-761d-11e7-ac42-738017d4f6c6' \
-ssl
CloudBerry Backup Command Line Interface started
Success
yesik:.../CloudBerry Backup/bin# ./cbb addRestorePlan \
-n "Google Restore" \
-a "Google Account" \
-f /srv \
-sy yes \
-ol yes
CloudBerry Backup Command Line Interface started
Success
唯一的区别是-sy yes
选项。根据文档,“如果您在与运行备份的计算机不同的计算机上设置恢复计划,则需要在恢复之前进行同步。”据我了解,这与 sync
系统调用无关,而是让 CloudBerry Backup 使用远程存储中的可用数据更新其本地数据库(稍后会详细介绍该数据库)。还是我错了?在这种情况下,请不要犹豫发表评论!
yesik:.../CloudBerry Backup/bin# ./cbb plan -r "Google Restore"
CloudBerry Backup Command Line Interface started
Success
如果等到完成,您可以使用以下临时命令检查备份是否是原始文件夹的精确副本。它远非完美,因为它不检查文件权限。但这足以让我确信所有文件及其内容都已恢复:
yesik:.../CloudBerry Backup/bin# (cd /srv/nfs/sample/My\ Courses/ ; find . -print -type f -exec cat {} \;) | md5sum
273510dd43e0e631822d0c48b7f9bbf6 -
linux:.../CloudBerry Backup/bin# (cd /srv/nfs/sample/My\ Courses/ ; find . -print -type f -exec cat {} \;) | md5sum
273510dd43e0e631822d0c48b7f9bbf6 -
互操作性
在 CloudBerry Backup 的发源地 Windows 世界中,这当然不是一个问题。但互操作性是 *nix 哲学的重要组成部分。
据我所知,命令行界面不提供计划或帐户的导入/导出功能。也不能直接访问日志历史记录。但仍然有希望,因为通过浏览 /opt/local/CloudBerry Backup/etc/config
文件夹,您将发现存储为 XML 文件的计划和帐户设置。
此外,您还会发现 cbbackup.db
文件,它是一个 SQLite 数据库,公开了一些信息,特别是有关备份历史记录的信息。当然,当您在不同的主机上恢复时,CloudBerry Backup 必须更新这个文件(您还记得上面的 -sy yes
选项吗?)
我不鼓励您修改这些文件,因为它们没有记录在案。但当然,您可以阅读它们。我发现这对于审计或监控目的非常有用。
云莓实验室是谁?
CloudBerry Backup 的功能非常丰富,我这个工程师对它很着迷。也许你也是。但我知道你们中的一些人将不得不将该软件“出售”给他们的管理层,因此您可能需要一些有关其编辑器的信息。
CloudBerry Lab 是一家总部位于加利福尼亚州的软件公司,根据其 LinkedIn 页面,他们的目标是“为中小型企业 (SMB) 提供基于云的备份和文件管理服务。”
CloudBerry Lab成立于2008年,最初瞄准Windows世界。直到 2015 年 7 月,他们的 Cloud Berry Backup 解决方案的第一个版本才针对 Linux 和 MacOS X 发布。这意味着在撰写本文时,CloudBerry Backup for Linux 才诞生两年。毫无疑问,该软件在未来几年仍将不断发展和成熟。
我的想法
经过这次测试,我必须说我对 CloudBerry Backup for Linux 非常满意。这篇文章已经很长了,所以我没有时间测试图形用户界面。但无论如何,命令行工具使您可以完全访问该软件的功能,这对我来说是强制性的。当然,CLI 显示了它的 Windows 起源,并且当然可以通过 shell 脚本进行定制以获得更好的可用性(来吧,在每个命令后说“成功”,太像 Windowish 了;)但它确实有效。而且备份软件本身似乎非常可靠。如果我必须选择一个备份解决方案,CloudBerry Backup 当然会是我会考虑的候选方案之一。
我主要的遗憾是该软件是闭源的。我不会评判这个选择,因为我可以理解一家公司想要保护其专业知识。但如果该产品的至少某些部分是开源的,或者该软件确实为独立开发人员提供某种 API 来丰富该产品周围的生态系统,那就太好了。例如,我非常确定这个简单的举措可以防止我在使用 CLI 时遇到的一些问题或限制,并且可以提高该工具的整体“脚本能力”。
但我不会抱怨。它仍然是一个很棒的产品。完全可以从命令行以及图形用户界面使用。在结束本文之前,我要感谢 CloudBerry Lab 的支持团队,尤其是 Sergey。在写这篇评论时,我开了一堆票。他们不仅回答了我的问题,还转发了我的消息,因此文档甚至软件都根据我的言论进行了修补。这一切都在不到 48 小时内完成。如果所有的支持都能如此积极响应就好了!
最后,请记住,如果您接受一些限制,您可以免费下载、试用甚至使用该产品。所以,如果你还在犹豫,那就这么做吧。请在下面的评论部分报告您的反馈!
GUI 和 CLI
最小的依赖性
支持许多云存储提供商
高度可配置的备份/恢复计划
非常积极响应的支持
闭源
CLI 工具的稀疏文档
用于加密备份的私有文件格式