rsync 使用示例 常用参数

说明:
Rsync(remote sync) 用于将文件和目录同步到另一位置。备份的位置可以在本地服务器或远程服务器。

基本rsync语法
此处参考copy用法即可
# rsync [options参数] source(源地址) destination(目标地址)
地址为远程服务器时格式为 user@host:/dir/file.name


rsync常用参数【options】
–z:允许压缩
–v:显示详细信息
–r:递归
-a:archive 存档 默认rsync不同步时间戳。
复制代码
存档内容:
    递归模式
    同步软链接
    同步权限
    同步时间戳
    同步属主和属组
复制代码
-e 指定某一shell 进行同步
rsync -e ssh  root@10.0.0.41:/var/lib/rpm /root  
//使用rsync –e ssh选择ssh进行安全连接。
rsync -e "ssh  -p 56 " root@10.0.0.41:/var/lib/rpm /root
//指定非标准端口

-u update 只更新较新的文件

-d  只更新目录 配合-r使用

–progress 查看进度

–delete 删除目标位置有 而源中没有的文件

 #注意,--delete参数要放在源目录和目标目录前,并且两个目录结构一定要一致!不能使用./*

–existing 在目标位置不创建新文件

-i 查看源和目的文件间的不同
复制代码
> 代表文件已被传输到本地主机。
f:代表这是个文件
s:代表文件大小发生变化
t:代表时间戳发生变化
o:属主发生变化
g:属组发生变化
复制代码
--include 指定某文件
--exclude 排除某文件
--exclude-from 将文件中列出的文件排除
-–max-size 文件大小限制
-W(whole 大写)不校验文件,传输整个文件
适合宽带充足,而cpu孱弱的场景
--bwlimit=rate (bandwidth)限制带宽


rsync常用参数

-a 归档模式,以递归属性传输文件,并保持所有属性,等同于 -rlptgoD 参数组合,-a 可以后跟一个 –no-OPTION 表示关闭 -rlptgoD 其中的某一个参数,例如 -a–no-l 就关闭了 -l 参数,-a 就等同于 -rptgoD

-e 指定传输协议,如 -e ‘ssh -p22’ 指定ssh 协议传输

-z 传输时进行压缩以提高传输率

-r 对子目录一递归模式处理,主要针对目录来说,如果传输的是目录必须加上 -r

-v 打印一下信息出来,比如速率,文件数量

-l 保留软链接

-L 像对待常规文件出来软链接文件,如果是 源文件中有软链接,加上选项后会把软连接指向的目标文拷贝中目标文件

-p 保持文件权限

-o 保持文件属主信息

-g 保持文件属组信息

-D 保持设备文件信息

-t 保持文件时间信息

-u 会把目标文件中比源文件中还新的文件排除掉,不覆盖

-P() 在同步过程中看到同步过程的状态,比如统计压迫同步的文件数量、传输速度

–delete 删除哪些目标文件中 源文件中没有的文件

–exclude=文件/目录名 指定排除不需要传输的文件,等号后面跟文件名,也可以是万能字符

–password-file=密码文件 指定密码文件,实现 rsync 服务同步时不用输入密码

–progress 等同于 -P 在同步过程中看到同步过程的状态,比如统计压迫同步的文件数量、传输速度

–version  查看rsync版本信息