对云进行免费加密备份 Fedora

大多数免费云存储空间限制为 5GB 或更少。 甚至 Google Drive 也被限制为 15GB。 虽然没有大量宣传,但 IBM 提供免费帐户 25GB 云存储免费。 这不是限时优惠,您无需提供信用卡。 完全免费! 更好的是,由于它与 S3 兼容,因此大多数可用于备份的 S3 工具应该可以正常工作。

本文将向您展示如何使用 restic 将加密备份到这个免费存储上。 另请参阅上一篇关于安装和配置 restic 的杂志文章。 让我们开始吧!

创建您的免费 IBM 帐户和存储

前往 IBM 云服务站点并按照以下步骤注册免费帐户: https://cloud.ibm.com/registration. 您需要通过 IBM 发送给您的电子邮件确认来验证您的帐户。

然后登录到您的帐户以显示您的仪表板,在 https://cloud.ibm.com/.

点击 创建资源 按钮。

点击 贮存 进而 对象存储.

接下来点击 创建存储桶 按钮。

这带来了 配置您的资源 部分。

接下来,点击 创建 按钮使用默认设置。

在下面 预定义的桶 点击 标准 盒子:

系统会自动创建唯一的存储桶名称,但建议您更改此名称。

在本例中,存储桶名称更改为 免费云存储。

点击 下一个 选择存储桶名称后的按钮:

继续点击 下一个 按钮,直到你得到 概括 页:

向下滚动到 端点 部分。

中的信息 民众 section 是存储桶的位置。 这是您在创建备份时需要在 restic 中指定的内容。 在这个例子中,位置是 s3.us-south.cloud-object-storage.appdomain.cloud.

制作您的凭据

您需要做的最后一件事是创建访问 ID 和密钥。 要开始,请单击 服务凭证.

点击 新凭证 按钮。

为您的凭证选择一个名称,确保检查 包括 HMAC 凭证 框,然后单击 添加 按钮。 在这个例子中,我使用了名字 静态备份.

点击 查看凭据.

access_key_id 和 secret_access_key 正是您要寻找的。 (由于显而易见的原因,作者的详细信息在这里被掩盖了。)

您需要通过在 shell 中使用导出别名调用它们来导出它们,或者将它们放入备份脚本中。

准备一个新的存储库

Restic 将您的备份称为存储库,并且可以对 IBM 云帐户上的任何存储桶进行备份。 首先,使用从 IBM 云存储桶中检索到的 access_key_id 和 secret_access_key 设置以下环境变量。 这些也可以在您可能创建的任何备份脚本中设置。

$ export AWS_ACCESS_KEY_ID=<MY_ACCESS_KEY>
$ export AWS_SECRET_ACCESS_KEY=<MY_SECRET_ACCESS_KEY>

即使您使用的是 IBM Cloud 而不是 AWS,如前所述,IBM Cloud 存储与 S3 兼容,并且 restic 将其内部 AWS 命令​​用于任何 S3 兼容存储。 因此,这些 AWS 密钥实际上是指 IBM 存储桶中的密钥。

通过初始化来创建存储库。 系统会提示您键入存储库的密码。 不要丢失此密码,因为没有它您的数据将无法恢复!

restic -r s3:https://PUBLIC_ENDPOINT_LOCATION/BUCKET init

PUBLIC_ENDPOINT_LOCATION 在您的存储桶摘要的端点部分中指定。

例如:

$ restic -r s3:https://s3.us-south.cloud-object-storage.appdomain.cloud/freecloudstorage init

创建备份

现在是时候备份一些数据了。 备份称为快照。 运行以下命令并在出现提示时输入存储库密码。

restic -r s3:https://PUBLIC_ENDPOINT_LOCATION/BUCKET backup files_to_backup

例如:

$ restic -r s3:https://s3.us-south.cloud-object-storage.appdomain.cloud/freecloudstorage backup Documents/
Enter password for repository: 
 repository 106a2eb4 opened successfully, password is correct
 Files:          51 new,     0 changed,     0 unmodified
 Dirs:            0 new,     0 changed,     0 unmodified
 Added to the repo: 11.451 MiB
 processed 51 files, 11.451 MiB in 0:06
 snapshot 611e9577 saved

从备份恢复

现在您已经备份了一些文件,是时候确保您知道如何恢复它们了。 要获取所有备份快照的列表,请使用以下命令:

restic -r s3:https://PUBLIC_ENDPOINT_LOCATION/BUCKET snapshots

例如:

$ restic -r s3:https://s3.us-south.cloud-object-storage.appdomain.cloud/freecloudstorage snapshots
Enter password for repository:  
ID       Date                Host   Tags  Directory 
------------------------------------------------------------------- 
106a2eb4 2020-01-15 15:20:42 client /home/curt/Documents

要恢复整个快照,请运行如下命令:

restic -r s3:https://s3.us-south.cloud-object-storage.appdomain.cloud/freecloudstorage restore snapshotID --target restoreDirectory

例如:

$ restic -r s3:https://s3.us-south.cloud-object-storage.appdomain.cloud/freecloudstorage restore 106a2eb4 --target ~
Enter password for repository: 
repository 106a2eb4 opened successfully, password is correct
restoring <Snapshot 106a2eb4 of [/home/curt/Documents]

如果该目录仍然存在于您的系统上,请确保为 restoreDirectory 指定不同的位置。 例如:

restic -r s3:https://s3.us-south.cloud-object-storage.appdomain.cloud/freecloudstorage restore 106a2eb4 --target /tmp

要恢复单个文件,请运行如下命令:

restic -r s3:https://PUBLIC_ENDPOINT_LOCATION/BUCKET restore snapshotID --target restoreDirectory --include filename

例如:

$ restic -r s3:https://s3.us-south.cloud-object-storage.appdomain.cloud/freecloudstorage restore 106a2eb4 --target /tmp --include file1.txt 
Enter password for repository:  
restoring <Snapshot 106a2eb4 of [/home/curt/Documents] at 2020-01-16 15:20:42.833131988 -0400 EDT by curt@client> to /tmp

摄影者 亚历克斯·马查多不飞溅.

[EDITORS NOTE: The Fedora Project is sponsored by Red Hat, which is owned by IBM.]

[EDITORS NOTE: Updated at 1647 UTC on 24 February 2020 to correct a broken link.]