📜  rsync 从远程到本地 (1)

📅  最后修改于: 2023-12-03 14:47:08.095000             🧑  作者: Mango

Rsync: 从远程到本地

简介

rsync(remote sync)是一个用于文件同步和备份的开源工具,最常用于在本地和远程主机之间以快速、可靠的方式同步文件和目录。rsync使用一种增量的传输算法,在初始传输后只传输发生更改的部分,从而减少了传输时间和带宽使用。

优势和特点
  • 快速和高效: rsync使用差异算法,只传输源和目标文件之间的差异,大大减少了传输的数据量和时间。
  • 支持多种传输协议: rsync可以通过本地文件、SSH、rsync daemon或其他特定协议进行文件传输。
  • 完整性保护: rsync通过校验和算法(MD5或SHA)来比较源和目标文件,确保数据的完整性。
  • 支持删除文件: 通过添加--delete选项,rsync可以删除目标文件系统中不存在的源文件。
  • 支持备份: rsync支持增量备份,只备份源和目标文件之间的差异,节省存储空间。
  • 支持远程复制: rsync可以从远程主机复制文件到本地主机,也可以从本地主机复制到远程主机。
使用示例
从远程主机复制文件到本地
rsync [options] user@remote_host:/path/to/source /path/to/destination
  • options:可选的rsync参数,例如-avz --delete
  • user:远程主机的用户名。
  • remote_host:远程主机的地址或主机名。
  • /path/to/source:要复制的源文件或目录的路径。
  • /path/to/destination:要将文件复制到的本地目标路径。
示例
rsync -avz --delete user@remote_host:/home/user/files /backup

这个示例命令将远程主机上的/home/user/files目录复制到本地主机的/backup目录。-avz选项表示保持文件属性(权限、时间等)、递归复制和压缩传输。--delete选项将会删除目标文件夹中不存在于源文件夹中的文件。

从本地主机复制文件到远程主机
rsync [options] /path/to/source user@remote_host:/path/to/destination
  • options:可选的rsync参数,例如-avz --delete
  • /path/to/source:要复制的源文件或目录的路径。
  • user:远程主机的用户名。
  • remote_host:远程主机的地址或主机名。
  • /path/to/destination:要将文件复制到的远程目标路径。
示例
rsync -avz --delete /local/files user@remote_host:/home/user/backup

这个示例命令将本地主机上的/local/files目录复制到远程主机的/home/user/backup目录。

结论

rsync是一个功能强大的文件同步和备份工具,它可以在本地和远程主机之间快速、高效地复制文件和目录。无论是从远程到本地还是从本地到远程,rsync都是程序员们进行文件同步和备份的理想选择。