如何实现Linux多台服务器间的文件双向同步
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何实现Linux多台服务器间的文件双向同步相关的知识,希望对你有一定的参考价值。
参考技术A Linux自带了ntp服务 -- /etc/init.d/ntpd,这个服务不仅可以设置让本机和某台/某些机器做时间同步,他本身还可以扮演一个time server的角色,让其他机器和他同步时间。配置文件就是/etc/ntp.conf。
为了测试,设置让node2 -- 192.168.1.102和node1 -- 192.168.1.101做时间同步。第一步,node1做time server,node1本身不和其他机器时间同步,就是取本地时间。所以,先把node1机器的时间调准了:
[root@node1 ~]date -s 08/03/2011
[root@node1 ~]date -s 11:12:00
[root@node1 ~]clock -w[root@node1 ~]hwclock --systohc
后两个命令是把设置的时间写到硬件时间中去(也就是CMOS里面的时间)。
第二步,然后将node1配置成一个time server,修改/etc/ntp.conf,[root@node1 ~]vi /etc/ntp.conf其他的配置不怎么需要改,只需要关注restrict的配置:
1. 注释掉原来的restrict default ignore这一行,这一行本身是不响应任何的ntp更新请求,其实也就是禁用了本机的ntp server的功能,所以需要注释掉。本回答被提问者采纳
Linux 远程同步:rsync
一、rsync 简介
(1) rsync 是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台主机间的文件
(2) rsync 使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快
(3) rsync 可以实现增量同步文件,也可以实现全量同步文件;可以实现本地同步文件,也可以实现远程同步文件
rsync -av /etc/passwd /tmp/1.txt # 本地同步,表示把/etc/passwd文件同步到/tmp目录并改文件名为1.txt rsync -av /data/aaaa/ /tmp/bbbb/ # 本地同步,表示把/data/aaaa目录同步到/tmp目录并改目录名为bbbb,同步目录时,最好在末尾都加上/ rsync -av /etc/passwd 192.168.1.2:/tmp/1.txt # 远程同步,表示把/etc/passwd文件同步到远程192.168.1.1的/tmp目录并改名为1.txt rsync -av /etc/passwd 192.168.1.2::tmp/1.txt # 远程同步,表示把/etc/passwd文件同步到远程192.168.1.1的tmp模块的指定目录下并改名为1.txt
-a # 相当于使用-rtplgoD这些选项 -r # 如果同步目录要加上该选项,类似 cp 的 -r 选项 -v # 显示同步时的详细信息,让我们知道同步的过程 -l # 同步时保留软链接 -p # 保持文件的权限 -o # 保持文件的属主 -g # 保持文件的属组 -D # 保持设备文件信息 -t # 保持文件的时间属性
-n #
-L # 同步软链接的同时也同步软链接指向的源文件,如果加上该参数就不需要加上-l参数了
-P # 显示同步过程,比-v更详细,会显示同步的进度,显示同步的网络速率,显示同步了多长时间 -u # 如果目标文件比源文件新,则不同步 -z # 文件传输前先压缩再同步 --delete # 同步时删除dest中src没有的文件,相当于把源目录完全拷贝到目标目录 --exclude # 过滤指定文件,如 --exclude ".svn" 会把文件名包含 svn 的文件或目录过滤掉,不同步
二、rsync 通过 ssh 同步
三、rsync 通过模块同步
以上是关于如何实现Linux多台服务器间的文件双向同步的主要内容,如果未能解决你的问题,请参考以下文章