rsync是最常用可靠的目录级持续同步工具,支持增量同步、断点续传、权限保留和ssh加密传输;基础命令为rsync -avz /local/path/ user@host:/remote/path/,注意路径末尾斜杠含义,可加--dry-run预览、ssh免密登录+crontab自动化、--exclude和--delete等进阶选项提升效率与安全性。

用 rsync 是最常用、最可靠的方式,它支持增量同步、断点续传、权限保留和 SSH 加密传输,比 scp 和 sftp 更适合目录级持续同步。
基础远程同步命令(推荐用法)
同步本地目录到远程服务器:
rsync -avz /local/path/ user@host:/remote/path/-
-a:归档模式(递归 + 保留权限、时间、软链等) -
-v:显示详细过程,便于确认哪些文件被更新 -
-z:传输中启用压缩,节省带宽 -
注意路径末尾的斜杠:
/local/path/表示同步内容;/local/path(无斜杠)则会把整个目录名也复制过去
反向同步:从远程拉取到本地
把远程服务器上的目录同步到本机:
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
rsync -avz user@host:/remote/path/ /local/path/- 同样注意远程路径末尾的
/,决定是同步内容还是连目录名一起拉 - 首次运行可加
--dry-run(或-n)预览变化,不实际传输
免密登录与自动化(生产环境必备)
避免每次输密码,提高脚本稳定性:
- 先配置 SSH 免密登录:
ssh-copy-id user@host - 再结合
crontab定时执行,例如每天凌晨 2 点同步: 0 2 * * * rsync -az /data/www/ user@backup-server:/backup/www/ >> /var/log/rsync-www.log 2>&1- 日志记录建议加上,方便排查失败原因
进阶:只同步变更、排除临时文件
提升效率和安全性:
- 跳过某些类型文件:
--exclude='*.tmp' --exclude='.git/' - 删除目标端已不存在的文件(慎用):
--delete,需搭配--dry-run先验证 - 确保时间戳一致(防止误判变更):
-t已包含在-a中,无需单独加 - 大文件多线程加速(需 rsync ≥3.1.0):
--partial --progress --contimeout=60










