rsync 同步与备份的五个实用用法

举报
yd_211758112 发表于 2026/11/13 14:50:57 2026/11/13
【摘要】 rsync 同步与备份的五个实用用法在服务器运维里,复制文件看似简单,但一旦涉及大目录、跨机器、断点续传和定期备份,cp 和 scp 就显得力不从心了。rsync 只传输有变化的部分,速度快、可续传、可预演,是日常同步和备份的好帮手。下面整理五个我在实际工作中最常用的用法。 一、基础同步:-a 和 -v,注意结尾斜杠rsync -av /data/project/ /backup/proj...

rsync 同步与备份的五个实用用法

在服务器运维里,复制文件看似简单,但一旦涉及大目录、跨机器、断点续传和定期备份,cp 和 scp 就显得力不从心了。rsync 只传输有变化的部分,速度快、可续传、可预演,是日常同步和备份的好帮手。下面整理五个我在实际工作中最常用的用法。

一、基础同步:-a 和 -v,注意结尾斜杠

rsync -av /data/project/ /backup/project/
  • -a(归档模式)会递归复制,并保留权限、时间戳、软链接、属主等信息。
  • -v 显示同步过程。
  • 源路径结尾的斜杠很关键:/data/project/ 表示同步目录里的内容;/data/project(不带斜杠)则会在目标下再创建一个 project 目录。很多人第一次用都会在这里踩坑。

二、先预演再执行:–dry-run

rsync -av --delete --dry-run /data/project/ /backup/project/

-n / --dry-run 只列出将要发生的变化,不做任何真实改动。尤其在使用 --delete 之前,先预演一遍,确认不会误删重要文件,再去掉 --dry-run 正式执行。

三、做镜像:–delete 保持两端一致

rsync -av --delete /data/www/ /backup/www/

默认情况下,源端删除的文件在目标端会保留。加上 --delete 后,目标端多出来的文件会被删除,使两边完全一致,适合做镜像。但它的破坏力也大,务必配合上一节的预演使用。

四、跨机器同步:走 SSH,支持断点续传

rsync -avz --partial --progress -e "ssh -p 2222" /data/logs/ user@10.0.0.8:/backup/logs/
  • -z 传输时压缩,适合带宽有限的场景。
  • --partial 保留传了一半的文件,网络中断后再次执行可以接着传。
  • --progress 显示每个文件的进度。
  • -e "ssh -p 2222" 指定 SSH 端口,配合密钥登录即可免密同步。

五、排除文件与限速:–exclude 和 --bwlimit

rsync -av --exclude='*.log' --exclude='node_modules/' --exclude-from=exclude.txt \
      --bwlimit=5000 /data/app/ user@backup:/backup/app/
  • --exclude 排除不需要备份的日志、缓存、依赖目录,--exclude-from 可以从文件读取规则,方便统一管理。
  • --bwlimit=5000 把带宽限制在约 5000 KB/s,避免白天备份占满业务带宽。

小结:配合 crontab 实现定时备份

0 2 * * * rsync -a --delete /data/www/ /backup/www/ >> /var/log/rsync-www.log 2>&1

把 rsync 写进 crontab,每天凌晨自动同步并记录日志,就是一个简单可靠的备份方案。记住三点:注意结尾斜杠、用 --delete 前先 --dry-run、跨机器同步用 SSH 密钥。掌握这五个用法,日常的文件同步和备份基本都能从容应对。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。