Rsync非常简单:它是专门用于复制文件的工具。对我们来说,这意味着rsync消除了手动备份中的许多不便之处。与使用Linux终端固有的文件操作命令相比,这导致了更加无缝的备份过程。
例如,rsync可以识别上次传输中未更改的文件,并通过不覆盖它们来节省时间。其他功能,例如压缩文件的能力,也使备份更加高效。虽然理论上可以通过手动完成这些事情,但是rsync将所有这些任务整合到一个便捷的工具中。
我们过去已经介绍过Grsync,但是知道如何使用工具为它供电(也就是说,rsync)可以证明是宝贵的资产。希望本文能向您演示使用不带图形后端的rsync是一个相当简单的任务。
RsyncBasics
所有rsync命令在本质上都是相同的,因此应该足够容易拿起。这是最基本的命令,它仅将一个文件夹的内容复制到另一个文件夹:
rsync -r -u -v ~/Source-Folder/ ~/Copy-Folder
-r 选项代表“ 递归"。简而言之,如果没有此选项,rsync会忽略存储在文件夹中的文件,这意味着它不会复制所有内容。我们添加了 -u 选项(用于“ 更新"),以确保您传输的文件不会覆盖目标文件夹中最新的文件。例如,如果您编辑了传输文件夹中的文件,但没有从原始文件夹中编辑文件。
-v 选项(“ 详细"),您可以查看rsync所做的事情,这对于监视其行为和动作非常有用。并非绝对必要,但是您可能最终会欣赏到额外的信息-没有它,rsync会变得更加安静。
对于更高级的备份形式,我们要做的就是添加额外的选项(即-[字母] )进行rsync。如果您想节省空间,实际上可以将所有这些字母放在一个大的选项中(例如 -ruv )。只需记住将它们放在之前,然后指定您的文件夹即可!
选择备份目录
如上所示,您先选择要从复制文件的文件夹,然后然后选择要复制到的位置。还要注意源文件夹末尾的 / 。这样做可以确保您仅复制文件夹的内容,而不是文件夹本身。如果希望随身携带该文件夹,则可以省略此斜杠。
有用的提示:〜/ 符号代表您的主文件夹(您的文档,桌面,下载,音乐等文件夹被存储。这比简单地输入完整的源文件夹位置要快得多,并且与用户名无关。
使用rsync排除文件和文件夹
有时,您不想备份整个文件。文件夹中的数据,而rsync也可以处理。除了只选择要复制的更特定的文件夹外,您还可以使用 –排除选项跳过它们。这使您可以告诉rsync忽略选定的文件夹,文件或模式。
rsync -ruv --exclude 'Subfolder' ~/Source-Folder/ ~/Copy-Folder
如上所示,子文件夹目录未传输。您还可以排除带有此文件的文件:只需在文件名中用引号引起来。
要阻止多个相似文件/文件夹的传输,请使用 * 符号和 –排除选项。
rsync -ruv --exclude '*.txt' ~/Source-Folder/ ~/Copy-Folder
此命令意味着rsync会忽略所有以.TXT结尾且仅沿文件夹复制的文件。 * 符号用作通配符-它代表您可以命名TXT文件的所有可能的单词和字母。这是rsync的基本排除模式。
关于排除,您应该了解一些重要信息:它们相对于您的复制源位于!简而言之,您需要告诉rsync您要排除的文件相对于您选择复制文件的位置的位置。这是一个正在运行的示例:
由于我们要从 Source-Folder 目录复制数据,因此我们不需要指定 Subfolder 目录已找到。就在里面但是,如果我们随后要从该文件夹中排除 File-1.txt ,则需要以“ Source-Folder"目录为根来声明其位置。 如果发现排除失败,请记住这一点!
使用rsync加快备份速度
如前所述,rsync可以压缩文件复制,然后在另一端解压缩。这意味着减少复制文件所需的数据传输量,减少压缩所需的CPU使用时间。因此,如果您在笔记本电脑上并希望节省电池寿命,则可能不想使用它。
rsync -ruv -z ~/Source-Folder/ ~/Copy-Folder
我们在这里所做的只是添加 -z rsync选项:这表示压缩选项。这是 zlib 的缩写,它是rsync用于执行此操作的软件。本质上(双关语)它将文件从一个地方压缩到另一个地方。
要查看传输速度的改善,只需查看rsync的输出即可。更具体地说,``加速为[x] ''(以秒为单位)。以此来衡量是否值得压缩文件备份。每个计算机都是不同的!
测试水域
在深入研究并正确使用rsync之前,最好先进行空运行。这样可以在备份数据之前准确查看rsync将复制的内容以及复制的位置。您只需要在命令中添加 -n 选项(“ 未进行任何更改"的缩写)即可进行测试运行:
rsync -ruv -n ~/Source-Folder/ ~/Copy-Folder
如上图所示,实际上没有文件传输。但是,您仍然可以看到如果省略 -n 选项将会发生什么情况。因此,在rsync中进行空运行是非常快速和容易的预防步骤,尤其是当您使用许多链接在一起的选项时。
进一步
希望,本文为您提供了从命令行快速高效地备份数据所需的专业知识。但是,rsync是一种非常通用的工具,因此,如果您发现备份需求超出了本指南的范围,请不要害怕输入以下命令:
man rsync
您看到的文档将介绍所有涵盖的选项这里还有很多其他细节。例如,它说明了如何按文件大小排除文件,这对于过滤出空白或冗余文件很有用。
标签: