rsync

    rsync不但传输速度快,而且在传输时,可以比较欲复制的内容和本地端数据的差异,若有差异,

    则只备份有差异的数据,若无差异,则无需要备份

二种工作方式:

    1.在本机上运行,和cp命令一样;例如:rsync -av /etc /tmp

    2.通过ssh方式运行在两个主机之间;例如:rsync -av -e ssh root@192.168.50.163:/etc /tmp

常用命令:

    -v:查看模式,可以列出很多信息

    -q:与-v相反,安静模式,略过正常信息,只显示错误内容

    -r:递归复制。可以针对目录来处理,非常重要

    -u:仅更新,若目标文件较新,则保留新文件不会覆盖

    -a:保留原有文件的各种属性

常用组合:

    -av

示例:写一个脚本通过ssh备份远程端的数据,要通过cron一起,实现每天自动备份

    #ssh-keygen -t rsa

    #ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.50.163 

       以密钥的方式进行登陆,这样在远程备份的时候就不需要输入密码

    #vim back.sh (写备份脚本)  

       #!/bin/bash

        localdir=/tmp/backup

        remotedir="/etc /boot /home"

        remoteip="192.168.50.163"

        [ -d ${localdir} ] || mkdir ${localdir}

        for dir in ${remotedir};do

                rsync -av -e ssh root@${remoteip}:${dir} ${localdir}

        done

       wKiom1bmWb7wDxM3AAAnhgoUqhQ920.png

    #chmod +x backup.sh(给脚本增加执行权限)     

加入任务计划

     #crontab -e

      wKiom1bmWjCzTYwLAAAJHeS1H7U979.png

测试成功执行