zoukankan      html  css  js  c++  java
  • Rsync文件同步服务

    Rsync简介

    Rsync是一款开源的、快速的、多功能的、可实现全量及增量的本地或远程数据同步备份的优秀工具,适用于Unix/Linux/Windows等多种操作系统。

    Rsync的特性

    1. 支持拷贝特殊文件如链接、设备文件
    2. 支持增量同步,传输效率较高
    3. 支持使用rcp,rsh,ssh作为隧道进行传输
    4. 支持使用守护进程的方式进行传输
    5. 支持匿名或认证的方式进行传输
    6. 支持保留文件属性不改变,支持排除指定文件

    Rsync数据备份架构

     Rsync常用参数

    -v  显示过程
    -z  压缩方式传输
    -a  归档模式,等于-rtopgDL
    -r  目录递归
    -t  保持时间信息
    -o  保持所有者
    -p  保持权限
    -g  保持所属组
    -P 显示过程以及断点续传 -D 保持设备文件信息 -L 保持软连接 -e 使用的信道协议 --exclude 指定排除文件 --bwlimit 限速 --delete 无差别同步

     本地传输

    rsync -avz /etc/hosts /tmp/
    
    #区别:/tmp 和 /tmp/ ,前者传目录本身和文件,后者只传目录下的文件
    [root@backup ~]# rsync -avz /tmp /mnt/
    [root@backup ~]# ls /mnt
    Tmp
    [root@backup ~]# rsync -avz /tmp/ /mnt/
    [root@backup ~]# ls /mnt
    hosts
    

     通过远程shell通道传输

    rsync -avz /etc/hosts -e "ssh -p 22" root@172.16.1.31:/mnt
    

     通过守护进程进行传输

    rpm -qa | grep rsync
    
    vim /etc/rsyncd.conf
    
    uid = rsync                         #客户端进行数据传输时所使用的用户
    gid = rsync                         #客户端进行数据传输时所使用的用户组
    user chroot = no                    #安全相关
    max connections = 200               #最大连接数
    timeout = 300                       #超时时间,客户端连接后300s不传输自动断开
    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                        #客户端不能ls等进行列表
    hosts allow = 172.16.1.0/24         #允许连接的主机
    #hosts deny = 0.0.0.0/32            #拒绝的主机
    auth users = rsync_backup           #客户端登录账号名
    secrets file = /etc/rsync.password  #密码文件,用于验证
    [backup]                            #模块名称
    path = /backup/                     #提供访问的目录
    
    useradd rsync -s /sbin/nologin –M
    mkdir /backup
    chown rsync.rsync /backup
    vim /etc/rsync.password
    
    rsync_backup:peterwang
    
    chmod 600 /etc/rsync.password
    rsync --daemon
    ps -ef | grep rsync | grep -v grep
    lsof -i :873
    echo "/usr/bin/rsync --daemon" >> /etc/rc.local 
    

     客户端配置

    mkdir /backup
    vim /etc/rsync.password
    
    peterwang
    
    chmod 600 /etc/rsync.password
    

     传输测试

    cd /backup/
    touch stu{001..100}
    rsync -avz /backup/ rsync_backup@172.16.1.41::backup/ --password-file=/etc/rsync.password
    rsync -avz rsync_backup@172.16.1.41::backup/ /backup/ --password-file=/etc/rsync.password
    
  • 相关阅读:
    bzoj3505 数三角形 组合计数
    cogs2057 殉国 扩展欧几里得
    cogs333 荒岛野人 扩展欧几里得
    bzoj1123 BLO tarjan求点双连通分量
    poj3352 road construction tarjan求双连通分量
    cogs1804 联合权值 dp
    cogs2478 简单的最近公共祖先 树形dp
    cogs1493 递推关系 矩阵
    cogs2557 天天爱跑步 LCA
    hdu4738 Caocao's Bridge Tarjan求割边
  • 原文地址:https://www.cnblogs.com/Peter2014/p/7512817.html
Copyright © 2011-2022 走看看