Rsync 实现文件定时同步
2005-06-02 14:32
369 查看
Rsync 实现文件定时同步
使用背景:
2005年5月,商务网处于上线阶段。但,由于总总原因一直迟迟不能上线。系统基本功能都已经实现了,但是作为一个商务网整体来说,文件同步这块还没有完成。正好自己这段时间不是很忙。对这块也有些兴趣,所以决定摸摸看。 万事开头难,从没接触过什么同步之类的,怎么开始呢?幸好以前做邮件系统的时候,认识了Eyou的小熊,请教了他,于是推荐了Rsync这个好工具给我。在此,特别感谢小熊的帮助。 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 restart3、 如果系统本身已安装了,那就不需要再安装,如果需要升级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编译器,例如gcc,cc等。) 第六步:键入 make install 安转rsync。(注意:运行该命令前先确定是否安装C编译器,例如gcc,cc等。) 第七步:如果以上编译都没有问题,rsync安装完成。
2、 配置rsync服务端
服务端的主要配置文件是 /etc/rsyncd.conf(该文件可能不存在,可以自己新建一个。) ,通过该文件可以配置全局访问的参数,需要备份的模块参数。以下面的配置为例:
参数说明:参数包括两部分,全局参数和模块参数。
全局参数一般定义在文件的最前面,本例中的全局参数如下:
本例模块参数说明:
rsyncd.conf 可以有更多的配置,例如密码的验证,模块的设置等。 [注意事项]
rsyncd.conf 以及密码文件的权限必须是600,即只有root可读\写更多rsyncd.conf属性请参考. http://rsync.samba.org/ftp/rsync/rsyncd conf.html
3、 配置rsync 客户端
第一步:安装rsync:在客户端上要实现同步,同样需要安转rsync服务,(安装方法参考上面)。第二步:测试是否安装成功。在命令行输入:
查看本地目录/home/zuohao/backup/ 是否与服务器中的需要备份目录文件已经同步。参数说明
更多参数说明,参考rsync网站说明文档:http://rsync.samba.org/ftp/rsync/preview/rsync.html
第三步:编制定时运行shell,运行以上命令,实现文件的定时同步。通过编辑crontab ,增加相应的脚本,实现文件的定时同步.本例脚本如下:*/30 * * * * zuohao /usr/local/bin/rsync.sh在每个30分钟的时候运行一次.
4、 安装完成
完成以上配置后, rsync的服务器端和客户端的配置就已经完成,简单的文件定时同步基本能够实现了.在 rsync 的官方网站上 http://rsync.samba.org/ 有更多的例子和文档可以参考.希望大家能通过本例,对rsync有大至的了解后,能够去看那些文档,这样能够更全面的使用rsync.
[注意事项]
1、 一般情况下 Linux 服务器版都已经安装了rsync。2、 安装rsync之前务必确定系统是否已安装了C编译器。否则安装无法继续。3、 rsync的安装必须是root用户。4、 rsyncd.conf文件的权限必须只有root能读、写,即 chmod 600 rsyncd.conf5、 如果使用密码文件,密码文件的权限属性也只能是6006、 一个rsyncd.conf 文件可以配置多个备份模块,每个模块可以定义允许访问的ip(hosts allow)地址以及不能访问的ip(hosts deny)具体参考rsync网站的rsyncd.conf说明文档。
[参考资料]
http://rsync.samba.org/ rsync网站,能够下载最新的版本和文档资料
使用背景:
2005年5月,商务网处于上线阶段。但,由于总总原因一直迟迟不能上线。系统基本功能都已经实现了,但是作为一个商务网整体来说,文件同步这块还没有完成。正好自己这段时间不是很忙。对这块也有些兴趣,所以决定摸摸看。 万事开头难,从没接触过什么同步之类的,怎么开始呢?幸好以前做邮件系统的时候,认识了Eyou的小熊,请教了他,于是推荐了Rsync这个好工具给我。在此,特别感谢小熊的帮助。 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 restart3、 如果系统本身已安装了,那就不需要再安装,如果需要升级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编译器,例如gcc,cc等。) 第六步:键入 make install 安转rsync。(注意:运行该命令前先确定是否安装C编译器,例如gcc,cc等。) 第七步:如果以上编译都没有问题,rsync安装完成。
2、 配置rsync服务端
服务端的主要配置文件是 /etc/rsyncd.conf(该文件可能不存在,可以自己新建一个。) ,通过该文件可以配置全局访问的参数,需要备份的模块参数。以下面的配置为例:
uid = rootgid = rootuse chroot = nomax connections = 4pid file = /var/run/rsyncd.pidlock file = /var/run/rsync.locklog file = /var/log/rsyncd.loghosts allow = 128.128.6.38 [inburst]path = /usr/shrcomment = BACKUP CLIENT IS REDHAT ADVANCE SERVER 3.0read only = yeslist = noauth users = rootsecrets file = /etc/inburst.pass [file0]path = /home/zuohao/wwwcomment = my rsync siteexclude = 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 --delete zuohao@128.128.6.38::file0 /home/zuohao/backup/ |
|
参数名 | 说明 |
Rsync | 同步服务 |
-vzrtopg | v详细提示 a以archive模式操作,复制目录、符号连接 z压缩 u只进行更新,防止本地新文件被重写,注意两者机器的时钟的同时 |
--progress | 显示进程 |
--delete | 删除文件保持同步 |
Zuohao | 服务器允许访问的用户名 |
128.128.6.38 | 服务器IP |
::file0 | 服务器中定义的备份模块名(注意:在模块名前面有两个冒号“::” 表示远程文件同步,只有一个冒号,表示本地文件同步) |
/home/zuohao/backup/ | 本地备份文件目录 |
更多参数说明,参考rsync网站说明文档:http://rsync.samba.org/ftp/rsync/preview/rsync.html
第三步:编制定时运行shell,运行以上命令,实现文件的定时同步。通过编辑crontab ,增加相应的脚本,实现文件的定时同步.本例脚本如下:*/30 * * * * zuohao /usr/local/bin/rsync.sh在每个30分钟的时候运行一次.
4、 安装完成
完成以上配置后, rsync的服务器端和客户端的配置就已经完成,简单的文件定时同步基本能够实现了.在 rsync 的官方网站上 http://rsync.samba.org/ 有更多的例子和文档可以参考.希望大家能通过本例,对rsync有大至的了解后,能够去看那些文档,这样能够更全面的使用rsync.
[注意事项]
1、 一般情况下 Linux 服务器版都已经安装了rsync。2、 安装rsync之前务必确定系统是否已安装了C编译器。否则安装无法继续。3、 rsync的安装必须是root用户。4、 rsyncd.conf文件的权限必须只有root能读、写,即 chmod 600 rsyncd.conf5、 如果使用密码文件,密码文件的权限属性也只能是6006、 一个rsyncd.conf 文件可以配置多个备份模块,每个模块可以定义允许访问的ip(hosts allow)地址以及不能访问的ip(hosts deny)具体参考rsync网站的rsyncd.conf说明文档。
[参考资料]
http://rsync.samba.org/ rsync网站,能够下载最新的版本和文档资料
相关文章推荐
- Rsync + Crontab实现定时文件同步(首次全量+后续增量)
- CentOS 6.3_ RSync实现文件定时备份同步配置与使用
- Rsync实现服务器文件定时同步备份
- Rsync实现文件定时同步技巧
- CentOS 6.3_ RSync实现文件定时备份同步配置与使用 推荐
- 使用inotify+rsync 实现文件目录实时同步
- rsync实现文件同步
- 使用cwRsync实现windows下文件定时同步(备份)
- 使用cwRsync实现windows下文件定时同步(备份)
- rsync + inotify 实现两台主机间文件的同步备份
- centos6.5 rsync+inotify实现服务器之间文件实时同步
- RSync实现文件备份同步
- 使用cwRsync实现windows下文件定时同步(备份)
- RSync实现文件备份同步
- 基于rsync同步算法的文件同步系统JAVA实现(一)——项目介绍
- RSYNC实现文件同步
- inotify + rsync 实现 linux 文件实时同步
- rsync+inotify实现服务器之间文件实时同步
- Linux下利用rsync实现多服务器文件同步
- rsync实现两台solaris服务之间的文件同步