rsync(Remote Sync)是 Linux 系统中一个高效的文件同步工具,广泛用于本地或远程系统之间的文件和目录传输。它采用“增量传输”机制,仅传送源与目标之间的差异内容,从而显著提升传输效率。
<pre class="brush:php;toolbar:false">rsync [参数] 源路径 目标路径
本地复制:
<pre class="brush:php;toolbar:false">rsync -av /path/to/source/ /path/to/destination/
从本地推送到远程:
<pre class="brush:php;toolbar:false">rsync -avz /local/path/ username@remote_host:/remote/path/
从远程拉取到本地:
<pre class="brush:php;toolbar:false">rsync -avz username@remote_host:/remote/path/ /local/path/
参数 | 全称 | 作用描述 |
---|---|---|
-a | --archive | 归档模式,保留所有文件信息(相当于 -rlptgoD) |
-v | --verbose | 显示详细操作过程 |
-z | --compress | 启用压缩传输 |
-r | --recursive | 递归处理目录 |
-l | --links | 保留软链接 |
-p | --perms | 保留文件权限设置 |
-t | --times | 保留修改时间 |
-g | --group | 保留所属组信息 |
-o | --owner | 保留拥有者信息 |
-D | --devices | 保留设备文件(需 root 权限) |
-h | --human-readable | 以易读方式显示大小 |
--progress | 展示传输进度条 | |
--delete | 删除目标中多余的文件 | |
--exclude=PATTERN | 跳过匹配该模式的文件 | |
--include=PATTERN | 包括匹配该模式的文件 |
# 将 /home/user/docs 内容同步至 /backup/docs,并保留所有属性
rsync -av /home/user/docs/ /backup/docs/
注意:结尾斜杠
/
# 同步本地目录到远程服务器并启用压缩
rsync -avz /data/backups/ user@example.com:/remote/backups/
# 忽略 .tmp 文件及 log 子目录
rsync -av --exclude='*.tmp' --exclude='log/' /source/ /destination/
rsync -avz -e 'ssh -p 2222' /local/path/ user@host:/remote/path/
rsync -avz --bwlimit=500 /source/ /destination/
rsync -av --min-size=100K /source/ /destination/
使用
--partial
rsync -av --partial /source/ /destination/
使用
-n
rsync -avn /source/ /destination/
-z
--compress-level=N
--no-checksum
-n
--log-file=rsync.log
--chmod
rsync 是每位 Linux 用户必须掌握的重要工具之一,熟练运用可以:
通过本篇文章的学习,您已经掌握了 rsync 的基本操作和进阶技巧。建议在日常工作中不断尝试,深入挖掘其更多强大功能。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 //m.sbmmt.com/ All Rights Reserved | php.cn | 湘ICP备2023035733号