【帮助中心】Linux rsync 命令教程,服务器文件同步、增量备份实操

2026-10-14 04:42:03丨 发布者:云天域--技术

在云服务器做网站备份、多服务器数据同步时,如果每次都完整复制全部文件,会耗费大量流量与时间。rsync 是 Linux 常用增量同步工具,只会传输新增或者改动过的文件,支持断点续传,相比 scp 更适合大数据同步,是运维备份首选工具。

一、rsync 基础语法

rsync [参数] 源文件路径 目标路径

二、本地服务器内文件同步示例

# 同步www网站目录到本地备份文件夹
rsync -av /home/wwwroot/ /home/backup/www/

参数说明:

  • -a:归档模式,保留文件权限、所有者、时间等属性(最常用)
  • -v:显示同步详情,方便查看同步过程
注意源目录末尾的/:/home/wwwroot/代表同步目录里面所有内容;不加/则同步整个文件夹。

三、远程服务器之间同步(ssh 方式)

1. 本地文件推送到远程服务器

rsync -av /home/wwwroot/ root@123.123.123.123:/home/wwwroot/

2. 拉取远程服务器文件到本地

rsync -av root@123.123.123.123:/home/wwwroot/ /home/wwwroot/

3. 远程 SSH 非 22 端口同步

rsync -av -e "ssh -p 2222" /home/wwwroot/ root@123.123.123.123:/home/wwwroot/

四、常用实用参数

  • --delete:删除目标目录里源目录不存在的文件,保持两边目录完全一致(谨慎使用)
  • --progress:显示文件同步进度,适合大文件
# 带进度显示同步
rsync -av --progress /home/wwwroot/ root@123.123.123.123:/home/wwwroot/

五、rsync 和 scp 区别

  1. scp:全量复制,每次传输全部文件,不支持断点续传,适合小文件一次性拷贝
  2. rsync:增量同步,只传输变更文件,支持断点续传,适合网站备份、大量文件迁移

六、常见踩坑

  1. 目录末尾/很容易出错,漏写会造成目录嵌套
  2. --delete参数慎用,会删除目标多余文件,建议先不带参数测试
  3. 同步失败检查:22 端口放行、账号目录写入权限
  4. 搭配 crontab 定时任务,可以实现服务器自动定期备份

总结

rsync 增量同步的特性,非常适合云服务器网站数据定期备份、跨服务器数据迁移。结合 crontab 定时任务,就能搭建自动化备份方案,保障网站数据安全。