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 的用法和选项,请参考 官方文档。