系列:Linux 命令基础
- Tmux 入门教程:让 SSH 断线和多任务终端不再中断
- Tree 命令教程:快速查看和导出目录结构
- Linux 搜索命令教程:find、grep、locate、rg 应该怎么选
- Linux 压缩与解压命令教程:tar、zip、gzip、xz、zstd 一次讲清
- Linux 文本处理命令教程:cat、less、head、tail、wc、sort、uniq
- Linux 权限命令教程:chmod、chown、umask
- Linux 进程查看与管理:ps、top、htop、kill、jobs
- Linux 网络排查命令:ss、curl、dig、ping、traceroute
- systemctl 与 journalctl 入门:管理服务和查看日志
- rsync 使用指南:服务器文件同步与备份
- Linux 服务器安全基础:SSH、用户权限、防火墙和 fail2ban
- 线上问题排查流程:日志、端口、进程、磁盘、网络怎么一步步看
- 深入浅出:Linux 树状目录神器 tree 命令的安装与使用指南
- Linux 系统 Vim 编辑器终极指南:从入门到精通
- SSH 隧道实战:本地转发、远程转发和动态转发
- SSH Config 使用指南:别名、跳板机与多服务器管理
rsync 最适合做增量同步:本地到服务器、服务器到本地、目录备份。它比 scp 更适合重复同步,因为只传变化部分。
基本用法
rsync -av ./dist/ user@server:/srv/app/dist/注意斜杠:./dist/ 表示同步目录里的内容;./dist 表示同步整个目录。
dry-run
正式同步前先预演:
rsync -av --dry-run ./dist/ user@server:/srv/app/dist/看到会改哪些文件,再去掉 --dry-run。
排除规则
rsync -av --exclude node_modules --exclude .git ./ user@server:/srv/app/也可以放到文件:
node_modules/.git/.envdist/运行:
rsync -av --exclude-from .rsyncignore ./ user@server:/srv/app/备份
从服务器拉回:
rsync -av user@server:/srv/app/uploads/ ./backup/uploads/如果是数据库,先导出再同步,不要直接复制正在写入的数据文件。
常见问题
权限不对时,先确认远端用户能不能写目标目录。不要直接 sudo rsync 解决所有问题。可以结合 Linux 权限命令教程:chmod、chown、umask。
网络不稳定时加:
rsync -av --partial --progress ./big-file user@server:/tmp/总结
rsync 的好习惯是:先 --dry-run,再正式同步;排除依赖、缓存、密钥;备份时从服务端拉回。它适合文件同步,不替代数据库备份方案。更多参数看 rsync 手册。