浅谈rsync

回复 收藏
本帖最后由 l5211314121 于 2015-4-28 13:47 编辑

原文地址:http://blog.chinaunix.net/uid-29356967-id-4990891.html

        rsync:
                rsync是一个实现快速曾量备份文件的工具,他提供了一种非常快速的办法将远程文件进行同步,他只发送文件的不同的地方,而不是同步整个文件
                提供下载的网址:https://rsync.samba.org/
        rsync一些特性:
                1、可以同步整个目录或者文件系统
                2、可以同步软连接,硬链接,文件属性(主,组,权限,时间等等)
                3、不需要特殊的权限就可以安装使用
                4、减少传输文件的延迟
                5、可以使用rsh,ssh或者更直接的socket来进行传输      
用法:
                本地:
                        rsync [option]  src  [dest]
                远程:
                        pull:rsync [option] [user@]host:src  [dest]
                        push:rsync [option] src [user@]host:dest
                通过配置文件:
                        pull:rsync [option] [user@]host::src   [dest]
                                        rsync [option] rsync://[user@]host[:port]/src   dest
                        push:rsync [option] src  [user@]host::dest
                                rsync [option]  src rsync://[user@]host[:port]/dest
                注:如果只有源没有目的地址,就会列出源的文件
                                rsync  ip:: 列出模块
               
        
        
        
        
        rsync:常用 -a,-v
                -a(--archive):r,l,p,t,g,o,D
                -r(--recursive):复制目录
                -v(--vervose):可视化
                -l(--links):保留软连接
                -p(--perms):保留权限
                -L(--copy-links):直接拷贝软连接指向的源文件
                --no-:关闭一个选项的功能
                        --no-l:去掉-l选项的属性
                -z(--compress):压缩
                -z(--compress-level=num):确定压缩等级
                -e “ssh -p  port“:改变传输端口,默认22
                -P:显示详细信息,传输速度等
                -u(--update):不覆盖远程服务器上比现在新的文件,mtime
                --delete:删除远程文件中多余的文件
                --exclude=filename:不同步filename
                --exclude-from=file:从文件中读取不同步的文件
                --bwlimit=100:配置速率
                --include:包含文件,可以跟--exclude选项同时使用,只同步指定的文件
                --include-from=file:从文件中读取包含的文件
                        rsync -av --include=“*.jpg" --exclude=* /src/  /des/只同步*.jpg的文件
                --files-from=filename,读取文件中的文件名,当做同步的源
                        如果我的文件里的内容是   
                                /data/a/a.txt
                                /data/b.txt
                                /data/c/b/c.txt
                                rsync -av --file-from=1.txt  /    /des/         如果我的文件里写的是绝对路径,源就是/


        配置文件:
                全局配置:   
  
motd file:
  
  
每次登陆的时候显示的信息,一般是站点信息
  
  
pid file:
  
  
保存进程号的文件
  
  
port
  
  
定义端口号,默认873
  
  
max  connection
  
  
最大连接数
  
  
address
  
  
定义监听地址,覆盖默认地址
  

              模块配置:
     
  
comment
  
  
登陆信息后面,显示模块描述
  
  
path
  
  
用此模块是时同步的路径
  
  
log file
  
  
定义日志文件,没有定义的时候,日志放在syslog中,如果定义在模块中,全局文件仍会包含日志信息
  
  
lock  file
  
  
该参数指定要使用的文件,以支持“最大连接数”参数。  rsync守护进程使用这个文件记录锁定,以确保最大连接数限制不超过共享锁定文件的模块。默认值是/var/run/rsyncd.lock。
  
  
read only=true/false
  
  
允许/不允许上传
  
  
write only=true/false
  
  
允许/不允许下载
  
  
list=true/false
  
  
允许/不允许列出文件列表
  
  
uid/gid
  
  
传输的时候用的用户和组,默认nobody
  
  
auth  users
  
  
定义认证用户,@表示组,格式:user:deny (空格)@admin:deny(空格)root:rw,权限覆盖read only
  
  
secrets file=/PATH
  
  
如果指定了auth  users参数,值查询此文件,模式username:password或者@groupname:password
  
  
hosts  allow
  
  
如果IP地址没有在允许里面,拒绝
  
  
hosts  deny
  
  
如果和allow一起,先检查allow在检查deny
  
     



2015-04-27 23:10 举报
已邀请:
0

lyhabc

赞同来自:

路过帮顶
0

l5211314121

赞同来自:


哈哈谢谢谢谢

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: