rsync

作者: 北疆07 | 来源:发表于2019-06-14 10:40 被阅读0次

    第一章rsync服务

    1.1 rsync说明

    rsync是一款开源的,快速的,多功能的,可实现全量及增量的本地或远程数据备份的优秀工具
    

    1.2 本地备份方法

    tar +定时任务
    

    1.3 远程备份

    Scp    只支持全量备份
    Rsync (推荐)   增量备份
    

    1.4 全量复制和增量复制的区别

    全量:全部同步/复制、不论新旧
    增量:只同步/复制新内容或有变化的内容
    

    1.5 如何实现增量传输数据

    1)利用rsync程序算法(判断数据属性信息是否一致),判断不同主机上的数据是否一致。
    2)利用rsync程序算法(判断文件md5数值是否一致),判断不同主机上的数据是否一致。
    

    1.6 利用rsync传输目录时

    传输的目录后面如果存在  / == /oldboy_dir   表示将目录下面的数据内容进行全部传输
    传输的目录后面如果不存在 / == /oldboy_dir   表示将目录本身和目录下面的数据内容进行全部传输
    

    1.7 rsync的应用场景

    不同服务器之间的数据备份:定时任务+rsync
    存储服务器实时备份:sersync+rsync
    

    1.8 rsync优点

    01. 可以控制传输的连接数量(同一时刻)   
    02. 可以实现免交互方式进行传输数据   
    03. 具有单独的传输认证进制  
    

    第二章:rsync命令工作模式及参数

    2.1 检查软件是否安装

    [root@backup ~]# rpm -qa rsync
    rsync-3.1.2-4.el7.x86_64
    CentOS 7 中rsync 默认安装
    如果没有安装需要我们手动安装:yum install -y rsync
    

    2.2 rsync 守护进程模式

    编写配置文件

    CentOS 7 中这个文件默认存在  我们需要在在这个文件中写入相关配置
    
    **[root@backup ~]# vim /etc/rsyncd.conf**
    
    ###rsync_config
    
    ###created by lpc at 2019
    
    ##rsyncd.conf start##
    
    uid = rsync
    
    gid = rsync
    
    fake super = yes
    
    use chroot = no
    
    max connections = 200
    
    timeout = 300
    
    pid file = /var/run/rsyncd.pid
    
    lock file = /var/run/rsync.lock
    
    log file = /var/log/rsyncd.log
    
    ignore errors
    
    read only= false
    
    list = false
    
    hosts allow = 172.16.1.0/24
    
    hosts deny = 0.0.0.0/32
    
    auth users = rsync_backup
    
    secrets file = /etc/rsync.password
    
    [backup]
    
    cmment = "backup dir by oldboy"
    
    path =/backup
    
    **配置文件相关说明**
    
    PS: 只要是一个守护进程服务, 都会存在配置文件
    
    vim /etc/rsyncd.conf
    
    #rsync_config
    
    #created by lpc at 2019
    
    ##rsyncd.conf start##   -- 注释信息
    
    uid = rsync   -- 管理备份目录(属主信息是rsync)
    
    gid = rsync       -- 管理备份目录(属组信息是rsync)
    
    port = 873    -- 守护进程服务端口信息
    
    fake super = yes       -- 映射为root
    
    use chroot = no      -- 安全的配置
    
    max connections = 200      -- 同时可以有多少客户端连接rsync服务器
    
    timeout = 300     -- 超时时间,显示空闲连接存活时间
    
    pid file = /var/run/rsyncd.pid --- 保存进程pid号码信息
    
    lock file = /var/run/rsync.lock --- 真正的限制同时的连接数
    
    log file = /var/log/rsyncd.log --- rsync程序日志文件
    
    ignore errors         -- 在备份传输数据时,一些不严重问题先进行忽略
    
    read only = false    -- 备份目录设置为可读可写
    
    list = false    -- 查看模块列表
    
    hosts allow = 172.16.1.0/24    -- 设置允许哪些主机或网段可以向备份服务器存储数据(白名单)
    
    hosts deny = 0.0.0.0/32  -- 设置禁止哪些主机或网段可以向备份服务器存储数据(黑名单)
    
    auth users = rsync_backup -- 认证用户
    
    secrets file = /etc/rsync.password -- 认证用户密码文件(信息:rsync_backup:oldboy123)
    
    [backup] -- 模块信息
    
    comment = "backup dir by oldboy" -- 模块注释说明信息
    
    path = /backup -- 定义一个备份目录
    

    添加进程管理用户

    useradd rsync -s/sbin/nologin -M
    创建一个虚拟用户、用于管理rsync服务
    

    创建服务所需目录

    chowm -R rsync.rsync /backup
    不修改用目录所有者和所属组的话无法远程备份 ,会报错:权限拒绝
    

    设置一个密码文件,进行免密交互

    配置一个密码文件、用于免交互传输
    echo "rsync_backup:oldboy123" > /etc/rsync.password
    修改认证文件信息/权限
    chmod 600 /etc/rsync.password
    

    启动rsync服务

    [root@backup ~]# systemctl start rsyncd
    

    2.3客户端配置

    查看软件是否安装

    [root@nfs01 ~]# rpm -qa |grep rsync
    rsync-3.1.2-6.el7_6.1.x86_64
    

    设置一个密码文件,并把权限设置为600

    [root@nfs01 ~]# echo 123456 >/etc/rsync.password
    [root@nfs01 ~]# chmod 600 /etc/rsync.password
    [root@nfs01 ~]# cat /etc/rsync.password
    123456
    [root@nfs01 ~]# ll /etc/rsync.password
    -rw------- 1 root root 7 Jun 15 10:26 /etc/rsync.password
    

    第三章 rsync参数

    a

    1.  r递归复制
    2.  l复制软连接
    3.  t保持mtime
    4.  o保持所有者不变
    5.  g所属组不变
    6.  p权限
    7.  D复制特殊设备
    

    v :显示同步过程

    z:同步的时候进行压缩

    delete(极其凶险)

    1.  目标 必须和源一模一样
    2.  从哪里来,到哪里去  一模一样
    3.  我有,你没有,我给你。你有,我没有,你给我删了
    

    exclide: 传输的时候排除某个文件

    第四章rsync全网备份

    客户端脚本设置

    image.png

    服务端脚本设置

    image.png

    相关文章

      网友评论

          本文标题:rsync

          本文链接:https://www.haomeiwen.com/subject/hdkmfctx.html