修改rsyncd.conf无需重启rysnc服务
/usr/bin/rsync --address=192.168.80.129 --daemon
更正:
1. 在使用过程中, 偶发现修改全局配置(配置文件中的全局变量), 是需要重新启动rsync进程的, 而修改某个指定Modual的属性配置的时候, 则不需要重新启动rsync进程而即刻生效。 且当某个变量名在全局或者局部变量中都存在, 对该模块来说, 局部变量的值会覆盖全局变量的值。
2. 对于上述结论, 在使用过程中, 对于hosts allow这个变量, 注意于host allow的区别:) 有一次一个同事hosts写成了host, 弄了半天还没弄明白为什么, 还以为必须重启才生效, 其实是rsync根本不认"host allow", 不过也不会报错~ 所以在修改配置的过程中还是要注意一些文法上的错误
3. --delete选项时, 两边的目录不能以/*结尾, 因为shell会把*扩展为该目录下的所有文件
4. /usr/local/app1 下面的要全部同步到 /usr/local/app2下面, 使/usr/local/app1和/usr/local/app2的目录结构完全一致, 在使用rsync的使用, 记得要在源路径最后还要加上斜线, 即
rsync -avrz /usr/local/app1/ /usr/local/app2 。 如果是rsync -avrz /usr/local/app1 /usr/local/app2的话, 生成的目录结构是 /usr/local/app2/app1/....
目标路径最后是否接/无所谓。
5. 使用 rsync 时,后面主机名与路径之间的冒号的个数, 一个冒号表示使用ssh协议进行数据传输, 两个冒号表示使用rsync协议进行数据传输。 在ssh协议传输模式下, 远程主机不需要有rsync守护进程存在, :后面接的是远程主机的目录/文件名称(而不使用rsyncd.conf里面配置的module name), 可以使用相对路径或者绝对路径。 如果是本地发送到远程, 指定远程主机的目录可以不存在, 但是其上层目录必须存在(即: rsync -avrz ./lab/ , 这里192.168.23.88上的/usr/local/app/test目录必须存在)。 在rsync协议传输模式下, moudle里面配置的path必须存在, 否则报错。
6. rsync不允许“远程”同步到“远程”, 只能是“远程”到本地, 或者是“本地”到“远程”, 而scp是允许远程到远程的数据同步的, 比如 scp -r
阅读(6848) | 评论(0) | 转发(0) |