rsync
是一个强大的文件同步工具,它允许你在本地和远程之间同步文件和目录
-
打开终端。
-
使用
rsync
命令创建一个同步规则。以下是一个简单的示例,用于将本地的/path/to/source
目录同步到远程的/path/to/destination
目录:
rsync -avz --delete /path/to/source/ user@remote_host:/path/to/destination/
在这个示例中:
-a
表示归档模式,它会保留文件的属性(如所有者、权限等)。-v
表示详细输出,显示同步过程中的信息。-z
表示压缩数据传输,减少带宽使用。--delete
表示删除目标目录中源目录不存在的文件,使目标目录与源目录保持一致。
- 如果你需要更复杂的同步规则,可以使用
--exclude
选项排除某些文件或目录,或者使用--link-dest
选项在目标目录中创建硬链接,而不是复制文件。例如:
rsync -avz --delete --exclude='*.log' --link-dest=/path/to/destination/ /path/to/source/ user@remote_host:/path/to/destination/
这个示例将排除所有 .log
文件,并在目标目录中创建硬链接。
- 你还可以使用
rsync
的配置文件(通常位于~/.rsyncd.conf
)来设置同步规则。首先,使用-f
选项指定配置文件:
rsync -avz --delete -f /path/to/rsyncd.conf user@remote_host:/path/to/destination/
然后,在 rsyncd.conf
文件中定义同步规则。以下是一个简单的示例:
module source path /path/to/source/ exclude "*.log" link_dest yes auth user secrets file ~/.rsyncd.secrets
在这个示例中:
module
定义了一个同步模块,其名称为source
。path
指定了要同步的源目录。exclude
排除特定文件或目录。link_dest
在目标目录中创建硬链接。auth
和secrets
用于身份验证。
你可以根据需要修改这些选项以适应你的同步需求。更多关于 rsync
的用法和选项,请参考 官方文档。