事到顺时需谨慎, 境到逆处仍从容

Rsync 实现文件定时同步

上一篇 / 下一篇  2008-01-28 22:06:58 / 个人分类:FreeBSD

使用背景: 

      Rsync的优点是部署方便,使用方便,效率高,并且它是开源的。目前在某些Linux服务器版中已经将其捆绑进来,可见其功能已经得到了较高的认可。

      关于Rsync的介绍,大家可以去google里面搜索,相信能找到更多,在此,我就不再浪费大家时间了(鲁迅先生说过:浪费别人时间等于谋财害命,浪费自己的时间等于慢性自杀。知道后果的严重性了吧,呵呵)。还是来看看我的实现步骤吧。

      

操作系统:

      文件服务器端:Red Hat Linux Advanced Server release 2.1AS/i686 (Pensacola)

      客户端:Red Hat Linux release 7.2 (Enigma)

      其中,服务器端的Linux已经捆绑了Rsync。我在AIX下也实现了客户端.

      [注意事项]

1、        要确定系统本身是否已经绑定(安装)了Rsync,可以到/usr/bin/usr/local/bin/或者/usr/sbin/等目录下查找Rsync是否存在,或者使用whereis rsync,也行。

2、        已绑定了Rsync的系统,在/etc/xinetd.d/rsync中,默认是关闭的。可以将其打开,然后重起服务service xinted restart

3、        如果系统本身已安装了,那就不需要再安装,如果需要升级Rsync版本,只需按照正常的安装步骤安装即可。

4、        rsync默认绑定的是873端口,如果rsync已经作为后台进程启动了,那么通过netstat –nap|grep 873 应该可以查看到有rsync进程。

1、 安装rsync

第一步:从http://rsync.samba.org/ 下载rsync包(本文配置使用Rsync 2.6.5 released

      第二步:将rsync包上传到作为服务器的机器上(例如:128.128.6.168

      第三步:转到root身份登录,解压rsync-2.6.5pre2.tar.gz包,到指定目录(例如:/home/zuohao/rsync/),并且将rsync目录分配给某个用户(例如:zuohao)。

      第四步:进入rsync目录。键入:./configure

Rsync将检测系统信息,并且生成相关文件。

      第五步:键入make,编译C文件。(注意:运行该命令前先确定是否安装C编译器,例如gcccc等。)

      第六步:键入make install安转rsync。(注意:运行该命令前先确定是否安装C编译器,例如gcccc等。)

      第七步:如果以上编译都没有问题,rsync安装完成。

      

2、 配置rsync服务端

服务端的主要配置文件是 /etc/rsyncd.conf(该文件可能不存在,可以自己新建一个。) ,通过该文件可以配置全局访问的参数,需要备份的模块参数。以下面的配置为例:

uid = root

gid = root

use chroot = no

max connections = 4

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

log file = /var/log/rsyncd.log

hosts allow = 128.128.6.38

[inburst]

path = /usr/shr

comment = BACKUP CLIENT IS REDHAT ADVANCE SERVER 3.0

read nly = yes

list = no

auth users = root

secrets file = /etc/inburst.pass

[file0]

path = /home/zuohao/www

comment = my rsync site

exclude = configfile

参数说明:参数包括两部分,全局参数和模块参数。

全局参数一般定义在文件的最前面,本例中的全局参数如下:

参数名

说明

uid

/etc/rsyncd.conf所属用户ID,一般为root

Gid

/etc/rsyncd.conf所属权限组

use chroot

在传输文件的之前,是否转到用户根目录。

Max connections

最大连接数

Pid file

服务进程pid保存文件

Lock file

锁文件路径

Log file

日至文件路径

Hosts allow

允许访问的ip地址,如果有多个ip,请用空格分割。

本例模块参数说明:

参数名

说明

[module name]

要备份的模块名,该名称客户端进行同步时需要调用

Path

要备份的目录

Comment

该模块的说明信息

Exclude

指定不需要同步的目录名,注意,该目录的路径是相对path的。不需要些绝对路径,如果有多个目录不需要同步,请用空格分割开.

            rsyncd.conf可以有更多的配置,例如密码的验证,模块的设置等。

             [注意事项]

                   rsyncd.conf以及密码文件的权限必须是600,即只有root可读\写

更多rsyncd.conf属性请参考.http://rsync.samba.org/ftp/rsync/rsyncd conf.html

3、 配置rsync客户端

第一步:安装rsync:在客户端上要实现同步,同样需要安转rsync服务,(安装方法参考上面)。

第二步:测试是否安装成功。

在命令行输入:

rsync -vzrtopg --progress --deletezuohao@128.128.6.38::file0 /home/zuohao/backup/

查看本地目录/home/zuohao/backup/是否与服务器中的需要备份目录文件已经同步。

参数说明

参数名

说明

Rsync

同步服务

-vzrtopg

v详细提示
  aarchive模式操作,复制目录、符号连接
  z压缩
  u只进行更新,防止本地新文件被重写,注意两者机器的时钟的同时

--progress

显示进程

--delete

删除文件保持同步

Zuohao

服务器允许访问的用户名

128.128.6.38

服务器IP

::file0

服务器中定义的备份模块名(注意:在模块名前面有两个冒号“::”表示远程文件同步,只有一个冒号,表示本地文件同步)

/home/zuohao/backup/

本地备份文件目录

TAG: rsync 定时 同步

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-10-01  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 1882
  • 日志数: 42
  • 建立时间: 2006-11-18
  • 更新时间: 2008-01-29

RSS订阅

Open Toolbar