zoukankan      html  css  js  c++  java
  • Linux下利用rsync实现多服务器文件同步

    目标:多服务器文件同步
     
    环境:2台CentOS5.6
     
    Web端:192.168.20.20
     
    Backup端:192.168.20.21
     
    需要备份目录为:192.168.20.20:/usr/local/web1 /usr/local/web2
     
    第一步:服务器端的配置
     
    #rpm –qa |grep rsync && rpm –e rsync-** --dodeps
     
    如果没有的话,则自行下载安装 (yum –y install rsync)
     
    #cd /usr/local/
     
    # wget http://www.samba.org/ftp/rsync/src-previews/rsync-3.0.6pre1.tar.gz
     
    #tar –zxvf rsync-3.0.6pre1.tar.gz
     
    #cd rsync-3.0.6pre1
     
    #./configure –prefix=/usr/local/rsync
     
    # make && make install
     
    # vi /etc/rsyncd.conf
     
    uid = nobody
     
    gid = nobody
     
    use chroot = no
     
    max connections = 4
     
    pid file = /usr/local/rsync/pid/rsyncd.pid
     
    lock file = /usr/local/rsync/pid/rsync.lock
     
    log file = /usr/local/rsync/pid/rsyncd.log
     
    secrets file=/usr/local/rsync/pwd/rsyncd.pwd
     
    hosts allow = 192.168.20.0/24
     
    hosts deny = *
     
     
     
    [web1]
     
    path=/usr/local/web1
     
    comment = backup web1
     
    ignore errors
     
    read only = yes
     
    #list = no
     
    auth users = web1
     
     
     
    [web2]
     
    path=/usr/local/web2
     
    comment = backup web2
     
    ignore errors
     
    read only = yes
     
    #list = no
     
    auth users = web2
     
     
     
    uid = nobody        //指定文件传输过程中的用户身份
     gid = nobody        //指定文件传输过程中的组身份
     
    log file = /var/log/rsyncd.log        //指定使用独立的日志文件的位置
     pid file = /var/run/rsyncd.pid        //保存pid到指定文件,以便于使用脚本终止进程
     
    read only = yes        //该目录设置为只读,即只允许客户端下行同步,不允许上传。若需要进行从备份机还原数据,改为no
     
    rsyncd默认在873端口监听服务,可在客户端使用telnet连接测
     
    密码文件为 /usr/local/rsync/pwd/rsyncd.pwd
     
     
     
    # mkdir -p /usr/local/pid
     
    # mkdir -p /usr/local/pwd
     
    # vi /usr/local/rsync/pwd/rsyncd.pwd
     
    web1:123456@789
     
    web2:789@123456
     
    格式为:用户名:密码
     
    设置密码文件仅仅root用户能访问
     
    #chmod 600 /usr/local/rsync/pwd/rsyncd.pwd
     
    # cp /usr/local/rsync/bin/rsync  /usr/bin/
     
    在服务器端启动rsync服务
     
    # rsync –daemon (注意重启kill后要把.pid .lock删掉)
     
    第二步:备份端的配置
     
    安装rsync软件,同上
     
    设置密码文件只需填写对应密码:
     
    # touch /usr/local/rsync/web1
     
    # touch /usr/local/rsync/web2
     
    # vi /usr/local/rsync/web1
     
    123456@789
     
    # vi /usr/local/rsync/web2
     
    789@123456
     
    同时设置为只有root有权限
     
    # chmod 600 /usr/local/rsync/wbe1
     
    创建备份目录
     
    # mkdir -p /usr/local/web1
     
    # mkdir -p /usr/local/web2
     
    # rsync –daemon
     
    把服务器端文件web1备份到本机(备份机):
     
    # /usr/bin/rsync -vzrtopg --progress --delete --exclude "logs/" --exclude "conf/ssl.*/" --password-file=/usr/local/rsync/web1 web1@192.168.20.20::web1 /usr/local/web1
     
    # Web2 也是一样的如上手动进行同步
     
    --delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致, 删除本地目录中多余的文件
     
    -- exclude "logs/" 表示不对/web1/logs目录下的文件进行备份。
     
    --exclude "conf/ssl.*/"表示不对/web1/conf/ssl.*/目录下的文件进行备份。
     
     
     
    如果需要可以放到crontab 计划任务中间隔性的进行同步备份!

  • 相关阅读:
    Record of coding:Codeforces 1093E
    【刷题记录】网络流24题等
    【模板归纳】网络流及费用流
    【刷题记录】BZOJ2154 crash的数字表格 莫比乌斯反演
    【刷题记录】SDOI2017数字表格
    算法总结 给定范围内最大公约数为某一定值的数对个数的算法
    刷题记录【BZOJ2440 完全平方数】数论、组合数学、莫比乌斯函数
    刷题记录 【HAOI2007】理想的正方形 二维st表
    刷题记录【ZJOJ2005午餐】,贪心+DP或者
    刷题记录【ZJOI2007棋盘制作】二维DP,悬线法。。。
  • 原文地址:https://www.cnblogs.com/jesseZh/p/4239008.html
Copyright © 2011-2022 走看看