📅  最后修改于: 2023-12-03 14:47:08.162000             🧑  作者: Mango
rsync 是一个常用的文件传输和备份工具,它可以在本地、远程和主机之间同步和备份文件,并且可以更好地使用带宽和资源。
rsync 在大多数 Unix 和 Linux 发行版中默认安装,如果没有安装,可以使用以下命令进行安装。
sudo apt-get install rsync
sudo yum install rsync
以下是 rsync 的基本用法示例:
rsync [OPTION...] SRC DEST
其中 SRC 是要同步或备份的源文件或目录,DEST 是要同步到的目标文件或目录。
下面这个示例演示如何同步两个文件夹:
rsync -av /path/to/source /path/to/destination
-a
表示以归档模式同步文件夹,包括文件的所有元数据(例如所有者、用户组、权限等)。-v
表示详细输出同步过程中的进度和信息。下面这个示例展示如何同步来自远程主机的文件夹:
rsync -av user@remote_host:/path/to/source /path/to/destination
其中 user 是远程主机的用户名,remote_host 是远程主机的 IP 地址或主机名。
在某些情况下,您可能希望在同步或备份时排除特定文件或目录。您可以使用 --exclude
参数来实现这一点。以下是一个实例:
rsync -av --exclude 'logs' /path/to/source /path/to/destination
这将从同步中排除名为 'logs' 的目录或文件。
以下是 rsync 更高级用法示例:
在同步大型文件夹时,您可能希望仅同步修改过的文件,而不是全部文件。您可以使用 --update
或 -u
参数实现这一点。
rsync -auv /path/to/source /path/to/destination
-u
或 --update
表示仅更新已更改的文件。如果您想要在同步时删除目标文件夹中不存在的文件,使用 --delete
参数。
rsync -av --delete /path/to/source /path/to/destination
--delete
表示在同步时删除目标文件夹中不存在的文件。如果您想要在同步时忽略文件权限和所有权,使用 --no-perms
和 --no-owner-group
参数。
rsync -av --no-perms --no-owner-group /path/to/source /path/to/destination
--no-perms
表示同步时不复制文件权限。--no-owner-group
表示同步时不复制所有者和用户组信息。如果您想要在同步时压缩传输以节省带宽和传输时间,使用 -z
参数。
rsync -avz /path/to/source user@remote_host:/path/to/destination
-z
表示在传输期间启用压缩。rsync 是一个功能强大的文件传输和备份工具,它提供了很多有用的选项和参数,可以帮助您使用网络和资源更有效地同步和备份文件。我们希望这篇文章能够为您提供更好地了解和使用 rsync 的知识。