分类: LINUX
2010-04-01 14:37:21
我自己写的一个关于RSYNC的总结
测试报告
1,首先SERVER与CLIENT都需要安装RSYNC
2,其次在SERVER的/etc/下面建立rsyncd.conf
内容可以按照下面的写法
[root@vm-base-01 local]# more /etc/rsyncd.conf
uid =
root ///RSYNC启动ID
gid = root
use chroot =
no
log file = /var/log/rsyncd.log ////日志存放
pid file =
/var/run/rsyncd.pid
lock file = /var/run/rsync.lock
[publishonline] ///模块名称---也就一个需要同步或备份的目录
path =
/usr/local/apache/htdocs/publish/online/images
comment = home cad
folder
ignore errors
read only = yes
list = no
auth users = xp20adm ////登录用户名--自我随意设置
secrets file =
/etc/rsyncd.scrt ////密码存放文件----一般需要自我建立此文件,路经与命名随意
[publishdown]
path = /usr/local/apache/htdocs/publish/down/images
comment =
home cad folder
ignore errors
read only = yes
list =
no
auth users = xp20adm
secrets file = /etc/rsyncd.scrt
[magdown]
path = /usr/local/apache/htdocs/publish/down
comment = home cad
folder
ignore errors
read only = yes
list = no
auth users = xp20adm
secrets file = /etc/rsyncd.scrt
3,SERVER就基
本配置好了,自己不要忘记配置模块中制定的目录与密码存放点
//////////////////////////////注意
////////////////////////////////////
bash-2.03# cat /etc/rsyncd.scrt
密码格式如下
用户名:密码 (有个冒号哟)
!!!!!!!!出于安全目的,文件的属性必需是只有属主可读(不能
错)!!!!!!!!!!!!!!!!!
chmod 400
4,然后就可以启动SERVER端的RSYNC程序了,如果上述配置不正确,rsync是无法正常启动的
启
动方案
在server端将rsync以守护进程形式启动
bash-2.03# rsync --daemon
如果要在启动时把服务起来,有几种不同的方法,比如:
a、加入inetd.conf
编辑/etc/services,加入rsync 873/tcp,指定rsync的服务端口是873
编加/etc
/inetd.conf,加入rsync stream tcp nowait root /bin/rsync rsync --daemon
b、加入rc.local
在各种操作系统中,rc文件存放位置不尽相同,可以修改使系统启动时rsync --daemon加载进去。
5 CLIENT设置
如果CLIENT想不输入RSYNC的密码而自动同步的话,可以设置一个秘密文件:可以用--password-file=/password/path
/file来指定密码文件,这样就可以在脚本中使
用而无需交互式地输入验证密码了,这里需要注意的是这份密码文件权限属性要设得只有属主可读。
下面这个命令行中-vzrtopg里的v是verbose,z是压缩,r是recursive,topg都是保持文件原有属性如属主、时间的参数。
--progress是指显示
出详细的进度情况,--delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致。后面的中,
inburst是指定密码文件中的用户名,之后的::inburst这一inburst是模块名,也就是在/etc/rsyncd.conf中自定义的名
称。最后的/tmp是备份
到本地的目录名。
举例CLIENT
如: rsync -vzrtopg --progress --delete
--exclude="*.sh" --exclude="images*" --exclude="*.log"
--password-file=/etc/rsync.pas /home/quack/backup/
这个例子基本包含所有应用
参数说明
-vzrtopg里的
v是verbose,
z是压缩,
r是recursive,
topg都是保持文件原有属性如属主、时间的参数
----progress
是指显示出详细的进度情况
--delete
是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致
用户名 模块名
--exclude="*.sh"
不包含某些文件
--password-file
指定CLIENT端密码文件存放路径
/home/quack/backup/
指定CLIENT端存放镜象目的路径
基本就这些了~~~剩下就是把CLINET端的RSYNC做一个启动脚本放入CRONTAB中以便定时同步 88
BY:IORI 2006-7
IN beijing XPLUS