🗄️如何使用tar和gpg创建压缩的加密存档

您可能要创建压缩的加密文件档案的原因有很多。

您可以创建个人文件的加密备份。

另一种可能的情况是,您可以通过Internet或通过云存储与朋友或同事私下共享内容。

Tar.gz文件或压缩的tar归档文件是使用tar命令创建的。

这些压缩文件几乎是GNU / Linux中的标准存档格式,但是未加密。

在上述方案中,建议执行加密以保护您的数据。

这是gpg进入的地方。

gpg是一种非常通用的加密工具,可让您加密文件,加密电子邮件并验证签名文件的完整性。

如何创建压缩档案

在讨论创建加密的归档文件之前,让我们首先看一下如何创建压缩的tar归档文件。

假设您有一个要归档的名为folder的目录,请输入以下命令:

$ tar -cvzf folder.tar.gz folder

-c标志用于创建档案,-v用于详细输出,以便我们有视觉反馈,让我们知道这种情况正在发生,而-z用于压缩档案以使其更小。 要在以后解压缩和提取此归档文件,必须输入以下命令。

$ tar -xvzf folder.tar.gz

-x标志用于提取档案,-v用于详细提取,-z用于解压缩档案。

🕺如何在Linux中归档文件和文件夹 [Совет для начинающих]

如何创建加密的存档

现在我们已经介绍了使用tar创建档案的方法,让我们看看如何通过向其添加gpg来创建加密的档案。

您可以使用基于密钥的加密,基于密码的加密或两者结合使用。

我们已经在文章中介绍了基于密钥的加密的使用:

  • 如何在Linux中使用gpg加密/解密文件(Kali Linux)
  • 👭如何在Linux上生成GPG密钥

因此,我们将在此处介绍基于密码的加密。

要创建名为folder的目录的加密压缩存档,请输入以下命令。

$ tar -cvzf - folder | gpg -c > folder.tar.gz.gpg

所有的tar标志与我们之前的示例相同。 唯一的区别是,不是在tar命令中指定存档文件名,而是在指定,以便可以将tar命令的输出通过管道传输到gpg。 然后,我们继续执行此操作,并且gpg的-c标志指示我们想要使用对称密码(如上所述)使用对称密码对文件进行加密。 最后,我们使用>将输出重定向到名为folder.tar.gz.gpg的文件。 输入此命令后,将提示您输入要用于加密数据的密码。 如果您不喜欢这种行为,并且希望在命令中包含密码短语,则可以在-c之后添加–passphrase标志,如下所示。

$ tar -cvzf - folder | gpg -c --passphrase yourpassword > folder.tar.gz.gpg

要稍后解密,解压缩和解压缩此归档文件,必须输入以下命令。

$ gpg -d folder.tar.gz.gpg | tar -xvzf -

-d标志告诉gpg我们要解密文件folder.tar.gz.gpg的内容。 然后,我们将其传递给tar命令。 -x标志用于提取从gpg传输的档案,-v用于详细提取,-z用于解压缩档案。

如何创建多个单独的加密目录归档

上面的示例假定我们要基于一个目录创建一个加密的存档。 H

那么,如果我们的目录充满了多个子目录,但是我们想为每个目录创建一个单独的加密存档,该怎么办?

我们可以使用bash循环。

只需转到包含您要为其创建单独档案的子目录的目录,然后输入以下命令。

$ for i in * ; do tar -cvzf - "$i" | gpg -c --passphrase yourpassword > "$i".tar.gpg; done

Sidebar