转的:之前遇到后不明白到底需不需要重启,这个讲的比较细 mark之

rsync重启问题讲解和处理
时间:2010-06-11 01:19 来源:互联网 字体:[大 中 小]

5月**日,渠道汇总统计失败,经查发现是如下原因:81.180机器拉取205.80机器上newGarden.2010-05-13文件的时候,执行失败,报的错误是“data2未知模块信息”。而31.21机器拉取205.80机器上newGarden.2010-05-13文件,则能顺利拉取成功,检查了下,hostsallow列表,和模块配置信息都是对的。然后重启了下205.80机器上的rsync进程,这下两个机器都能顺利的拉取205.80机器上的文件了。
rsync 重启问题分析:
看了下机器初始化脚本,脚本中会往rsyncd.conf文件中新增加一个[data2]的模块配置信息。但是并没有重启rsync进程,于是怀疑是否是这里出了问题。于是去网上查了查关于rsync的配置文件修改后到底要不要重启的问题。
网上有一段关于rsync配置修改后是否需要重启的文章是这样写的:
[1.在使用过程中,发现修改全局配置(配置文件中的全局变量),是需要重新启动rsync进程的,而修改某个指定Modual的属性配置的时候,则不需要重新启动rsync进程而即刻生效。且当某个变量名在全局或者局部变量中都存在,对该模块来说,局部变量的值会覆盖全局变量的值。
2.对于上述结论,在使用过程中,对于hostsallow这个变量,注意于hostallow的区别:)有一次一个同事hosts写成了host,弄了半天还没弄明白为什么,还以为必须重启才生效,其实是rsync根本不认"hostallow",不过也不会报错。所以在修改配置的过程中还是要注意一些文法上的错误
3.--delete选项时,两边的目录不能以/*结尾,因为shell会把*扩展为该目录下的所有文件]
实验了一下,上面讲的内容的确是对的。
但是,这个理论还是解释不了上面出现的问题。后来看了下rsync的手册,也没有讲到关于rsync配置文件修改后是否需要重启的问题。鉴于这种情况,还是在统计机器初始化脚本中,修改完rsyncd.conf文件后,把进程重启下会比较好。

那为何rsync重启呢?
先判断rsync进程是否存在:
psauxf|grep'rsync'
这样一般就能看到rsync这个进程的启动方法了。
root234190.00.014344764?Ss20090:34/usr/bin/rsync--address=172.**.**.***--daemon
2,rsync重启的方法:先kill掉进程,然后再启动进程。
重启进程,可以用上面观察到的语句。
进一步来讲,也许当你不知道这个程序如何启动,又不想去找启动文件的时候,可以用上面这种方法。

无缝重启rsync

在更改Rsync配置文件后,需要kill掉Rsync所属进程,再启动;这是一个让人疲劳的动作。

1、#vi /etc/xinetd.d/rsync

2、将disable 更改成No;

3、/etc/init.d/xinetd restart