linux下rsync安装与配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下rsync安装与配置相关的知识,希望对你有一定的参考价值。

rsync    (同步数据,支持增量备份)

使用方法:

rsync -av 192.168.31.182:/tmp/1.txt /tmp/    (将服务器192.168.31.182中tmp文件夹下的1.txt文件拷贝到本机的tmp目录下)

rsync -av /tmp/1.txt 192.168.31.182:/tmp/    (将本机的tmp目录下的1.txt文件拷贝到服务器192.168.31.182中tmp文件夹下)

rsync -av 192.168.31.182::longfei/123/1.txt /tmp/    (demo从服务器复制到本地)

rsync -av /tmp/1.txt 192.168.31.182::longfei/123/    (demo从本地复制到服务器)

选项:

-a == -rlptgoD

-v == 可视化

--delete == a-->b删除同步过程中a没有b有的文件

--exclude=PATTERN == 同步过程中不同步某些文件夹

-P == 能够查看同步进度,类似于-v

-u == a-->b避免覆盖b机器上已经修改过的文件内容

-avL    (可以将有软链接的文件直接同步拷贝)


rsync -av 111/ /tmp/123/    (将111目录下的文件拷贝到/tmp/123/下)

rsync -avL 111/ /tmp/123/    (将有软链接的文件的链接的文件直接覆盖拷贝到/tmp/123/下对应的文件)

rsync -avL --delete 111/ /tmp/123/    (将有软链接的文件的链接的文件直接覆盖拷贝到/tmp/123/下对应的文件,且将原文件夹内删除的文件,在目标文件夹内也删除)

rsync -avLu 111/ /tmp/123/    (将有软链接的文件的链接的文件直接覆盖拷贝到/tmp/123/下对应的文件,且不会将目标文件夹内已经修改的文件覆盖)

rsync -avLu --exclude="*.txt" 111/ /tmp/123/    (将有软链接的文件的链接的文件直接覆盖拷贝到/tmp/123/下对应的文件,且不会将目标文件夹内已经修改的文件覆盖,但是不拷贝原文件夹内的所有.txt结尾的文件)

rsync -avLuPz --exclude="*.txt" 111/ /tmp/123/    (将有软链接的文件的链接的文件直接覆盖拷贝到/tmp/123/下对应的文件,且不会将目标文件夹内已经修改的文件覆盖,但是不拷贝原文件夹内的所有.txt结尾的文件,并显示当前拷贝进度,并将拷贝内容压缩后传输)

rsync -avPz -e "ssh -p 10022" 192.168.31.182/tmp/111/ ./111/    (指定端口进行拷贝传输)

rsync -avL --delete --exclude [email protected]::mokuaiming/test ./ --password-file=/home/admin/rsyncd.passwd    (rsync参考词条,较全)


rsync后台服务方式

配置文件:

/etc/rsyncd.conf    (配置文件,可自定义,现在为自动加载)


配置文件内容:

    prot=8730

    log file=/var/log/rsync.log

    pid file=/var/run/rsync.pid


    [mokuaiming]

    path=/tmp/rsync    #目录要真实存在

    use chroot=yes    #是否把登录用户限定在当前目录下,对软链接有限制,如果有软链接文件,需要改为no

    max connections=4

    read only=no    #登录到该目录下,且限定目录文件是否只读,如果需要将服务器文件下载下来,需要改为no

    list=yes    #能否使用rsync --prot 8730 192.168.31.182 命令把模块名字列出

    uid=root

    gid=root

    auth users=sponge

    secret file=/etc/rs.passwd    #密码权限需要可读

    hosts allow=192.168.31.182 192.168.31.18    #允许哪些ip能够连接

    

    [mokuaiming2]    #不需要用户认证都可以拷贝,且任何机器都能连接

    path=/tmp/rsync123    #目录要真实存在

    use chroot=yes    #是否把登录用户限定在目录下

    max connections=4

    read only=no    #登录到该目录下,且只读

    list=yes    #是否把模块名字列出

    uid=root

    gid=root


rsync --demon    (启动rsync的demon进程,更改配置文件后不需要重启进程,直接生效)

rsync -avPz --prot 8730 192.168.31.182::mokuaiming/tmp/rsync/1.txt ./    (同步文件格式)

rsync -avPz --prot 8730 [email protected]::mokuaiming2/tmp/rsync123/1.txt ./    (同步文件格式)

rsync -avPz --prot 8730 --password-file=/tmp/rsync.passwd.txt  [email protected]::mokuaiming2/tmp/rsync123/1.txt ./    (不需要输入密码,直接能够进行传输,但是密码文件中需要写入密码,且一个文件只能存一个密码)


diff    (对比两个文件的差异)

使用方法:

diff /tmp/1.txt /etc/init.d    (对比两个文件异同)


以上是关于linux下rsync安装与配置的主要内容,如果未能解决你的问题,请参考以下文章

CentOS 6.3下rsync服务器的安装与配置

转载CentOS 6.3下rsync服务器的安装与配置

rsync简介与rsync+inotify配置实时同步数据

rsync定时同步配置

linux 下安装rsync

CentOS 6.5 rsync服务的安装与配置