rsync
是一个用于文件同步和传输的强大工具,它能够高效地处理大量数据,同时保持文件的权限和属性不变。以下是使用 rsync
通过 SSH 安全传输数据的一些关键点和常用参数的总结:
基本命令结构
rsync [options] source destination
常用选项
-a
(archive mode):这是多个选项的组合,包括-rlptgoD
,用于保持文件的权限、链接、时间戳等。-v
(verbose):显示操作的详细过程,有助于监控同步状态。-z
(compress):在传输数据时进行压缩,减少所需的传输时间和带宽。-e
(remote shell):指定远程 shell 程序,通常是ssh
,用于加密数据传输。
传输数据示例
将本地目录 /path/to/source/
同步到远程服务器的 /path/to/destination/
目录:
rsync -avz -e ssh /path/to/source/ user@remote:/path/to/destination/
注意事项
- 目录路径后的斜杠(
/
)对于rsync
操作有特定的含义。目录路径末尾的斜杠表示复制目录内的内容,而不包括目录本身;没有斜杠则表示复制目录及其内容。 - 使用
-e ssh
时,可以通过 SSH 进行安全传输,如果需要指定 SSH 端口,可以在-e
选项后添加-p 端口号
。
应用场景
rsync
非常适合进行备份操作、网站部署、远程文件同步等场景,特别是在处理大量数据时,其优势更为明显。通过使用 SSH 传输,rsync
也确保了数据传输过程的安全性。