zoukankan      html  css  js  c++  java
  • linux下Rsync同步镜像服务器配置教程

          主服务器:192.168.0.220 (CentOS 4.4)

      从服务器:192.168.0.248 (CentOS 5)

      ============================== 1> 在两台主机上分别安装rsync ======================

      默认一般都是安装了的

      1 2[root@office ~]# rpm -qa|grep rsync rsync-2.6.3-1

      如果没有安装,使用yum install rsync来进行安装即可; 正常情况很快就安装完毕,rsync 服务器架设比较简单,可我们安装好rsync后,并没有发现配置文件以及rsync服务器启动程序,因为每个管理员可能对rsync 用途不一样,所以一般的发行版只是安装好软件就完事了,让管理员来根据自己的用途和方向来自己架设rsync服务器。

      ============================== 2> rsync服务器的配置 ==============================

      在/etc目录下创建一个rsyncd的目录,我们用来存放rsyncd.conf,rsyncd.secrets和rsyncd.motd文件; rsyncd.conf 是rsync服务器的主配置文件; rsyncd.secrets是用户密码文件; rsyncd.motd配置一些服务欢迎及说明信息;

      a>创建修改 rsyncd.conf

      rsyncd.conf 是rsync服务器主要配置文件,我们来个简单的示例;比如我们要备份服务器上的 /tmp/目录 ,在/tmp/ 中,我想把test目录和test.php文件排除在外;

      1 2 3 4[root@office ~]# cd /etc [root@office ~]# mkdir rsyncd [root@office ~]# cd rsyncd [root@office ~]# vi rsyncd.conf

      写入(保证文件中每行没有空格):

      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41pid file = /var/run/rsyncd.pid port = 873 address = 192.168.0.220 #uid = nobody #gid = nobody uid = root gid = root   use chroot = yes read only = yes   #limit access to private LANs #设置可访问的主机:如果多个ip则用空格隔开:192.168.0.3 192.168.0.4 192.168.0.5或者设置区间 192.168.0.3/5 hosts allow=192.168.0.0/24 hosts deny=*   max connections = 5 motd file = /etc/rsyncd/rsyncd.motd   #This will give you a separate log file log file = /var/log/rsync.log   #This will log every file transferred - up to 85,000+ per user, per sync transfer logging = yes   log format = %t %a %m %f %b syslog facility = local3 timeout = 300 #方括号中设置模块名 [linuxsirhome] #要同步服务器的目录路径 path = /backup list=yes ignore errors #auth users是必须在服务器上存在的真实的系统用户,如果你想用多个用户,那就以,号隔开;比如 auth users = ljzhou,rsyncsir auth users = ljzhou #从服务器访问需要的密码文件 secrets file = /etc/rsyncd/rsyncd.secrets comment = linuxsir tmp #设置不同步的目录或文件用空格隔开 exclude = test/ test.php

      b> 创建修改密码文件rsyncd.secrets

      1 2[root@office ~]# cd /etc/rsyncd [root@office ~]# vi rsyncd.secrets

      写入: ljzhou:123456 退出保存。修改权限密码文件的权限:

      1[root@office ~]# chmod 600 rsyncd.secrets

      c> 创建修改rsync.motd文件

      rsyncd.motd是定义rysnc 服务器信息的,也就是用户登录信息。比如让用户知道这个服务器是谁提供的等;类似ftp服务器登录时,我们所看到的 linuxsir.org ftp ……。 当然这在全局定义变量时,并不是必须的,你可以用#号注掉,或删除;如:

      1[root@office ~]# vi rsyncd.motd

      写入: welcome!

      ============================== 3> 启动rsync服务==============================

      1[root@office ~]# /usr/bin/rsync --daemon  --config=/etc/rsyncd/rsyncd.conf

      1

      ============================== 4> 主服务器已经配置好rsync!下面我们设置从服务器============

      从服务器只需安装rsync即可,然后运行:

      1[root@devel ~]# /usr/bin/rsync -vzrtopg --progress ljzhou@192.168.0.220::linuxsirhome  /tmp

      #因为没有指定密码文件,所以需要手动输入主服务器上的设定的密码输入密码:123456 ljzhou是指定密码文件中的用户名 ::linuxsirhome 表示在rsyncd.conf中设置的模块名 /tmp是从服务器目录(192.168.0.248/tmp) 到此为止,rsync的两台主机之间(192.168.0.220/tmp和192.168.0.248/tmp)的rsync同步已经配置完毕,只要在从服务器执行上述命令输入密码即可同步。

      ============================== 5> 设置主从服务器定定时自动同步==============================

      自动同步要用到从服务器上的cron服务,关于cron的介绍请参考:linux定时执行系统我们在从服务器即192.168.0.248的/tmp目录下创建两个rsync.sh文件和rsync.secrets文件。 rsync.sh文件是cron要执行的脚本文件。 rsync.secrets是保存主服务器密码的文件。

      a> 创建rsync.sh文件

      1 2[root@devel ~]# cd /tmp [root@devel ~]# vi rsync.sh

      写入: /usr/bin/rsync -vzrtopg -progress ljzhou@192.168.0.220::linuxsirhome /tmp -password-file=/tmp/rsync.secrets

      退出保存。

      b> 创建rsync.secrets密码文件

      1[root@devel ~]# vi rsync.secrets

      写入: 123456

      退出保存并修改权限:

      1[root@devel ~]# chmod 600 rsync.secrets

      c> 配置cron服务

      1[root@devel ~]# crontab -e

      添加一行: */1 * * * * /web/www/rsync.sh //即每分钟同步一次退出保存,rsync.sh 这个文件放置于一个妥善保存的地方,不要泄露密码。

      设置完毕,以后每隔一分钟即会把主服务器/tmp目录更新至从服务器/tmp。

  • 相关阅读:
    插播一条 WMI修复教程
    DirectX12 3D 游戏开发与实战第八章内容(上)
    陆地与波浪演示程序(第七章内容)
    DirectX12 3D 游戏开发与实战第七章内容(下)
    C++匿名函数的使用
    绘制多种几何体演示程序(第七章内容)
    DirectX12 3D 游戏开发与实战第七章内容(上)
    DirectX12 3D 游戏开发与实战第六章内容
    DirectX12 3D 游戏开发与实战第五章内容
    无法解析的外部符号
  • 原文地址:https://www.cnblogs.com/lben/p/2785646.html
Copyright © 2011-2022 走看看