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 计划任务中间隔性的进行同步备份!

  • 相关阅读:
    JavaScript
    94.Binary Tree Inorder Traversal
    144.Binary Tree Preorder Traversal
    106.Construct Binary Tree from Inorder and Postorder Traversal
    105.Construct Binary Tree from Preorder and Inorder Traversal
    90.Subsets II
    78.Subsets
    83.Merge Sorted Array
    80.Remove Duplicates from Sorted Array II
    79.Word Search
  • 原文地址:https://www.cnblogs.com/jesseZh/p/4239008.html
Copyright © 2011-2022 走看看