|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!客户端:192.168.0.22,192.168.0.20
办事端:192.168.0.21(源)用来同步其他办事器
我后面写过
http://chenhao6.blog.51cto.com/6228054/1298375inotify+rsync+mutt+msmtp完成linux文件或许目次主动更新而且完成发邮件给治理员
然则有些功效不克不及完成,假如让你只更新非分特别的几台不全体更新,你怎样办。
这里给出计划
起首192.168.0.22客户端设置装备摆设剧本
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/bash
#客户端192.168.0.22(多台)
yum-yinstallrsync
cat>>/etc/rsyncd.conf<<EOF
uid=root
gid=root
usechroot=no
maxconnections=100
timeout=600
pidfile=/var/run/rsyucd.pid
lockfile=/var/run/rsyncd.lock
logfile=/var/log/rsyncd.log
[www]
path=/home/www
ignoreerrors
readonly=no
list=no
hostsallow=192.168.0.21/255.255.255.0
authusers=www1
secretsfile=/etc/www1.pwd
EOF
echo"www1:123">>/etc/www1.pwd
chmod600/etc/www1.pwd
echo"Welcometousethersyncservices">>/var/rsyncd.motd
/usr/bin/rsync--daemon
echo"/usr/bin/rsync--daemon">>/etc/rc.local
192.168.0.20客户端设置装备摆设剧本
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/bin/bash
#客户端192.168.0.20
#这些设置装备摆设文件的意思之前的文章写过详细请看头上的衔接
yum-yinstallrsync
cat>>/etc/rsyncd.conf<<EOF
uid=root
gid=root
usechroot=no
maxconnections=100
timeout=600
pidfile=/var/run/rsyucd.pid
lockfile=/var/run/rsyncd.lock
logfile=/var/log/rsyncd.log
[www]
path=/home/www
ignoreerrors
readonly=no
list=no
hostsallow=192.168.0.21/255.255.255.0
#这里正文失落,许可谁拜访假如多台就空格加192.168.0.22/255.255.255.0
authusers=www1
secretsfile=/etc/www1.pwd
EOF
echo"www1:123">>/etc/www1.pwd
chmod600/etc/www1.pwd
echo"Welcometousethersyncservices">>/var/rsyncd.motd
/usr/bin/rsync--daemon
echo"/usr/bin/rsync--daemon">>/etc/rc.local
1
1
上面症结的时辰到了
1
serviceiptablesstart
2台办事器都运转
1
2
/usr/bin/rsync--address=192.168.0.22--port=998--daemon他本身的端口
/usr/bin/rsync--address=192.168.0.21--port=998--daemon更新源端口
这里就手动指定端口了
办事端192.168.0.21的设置装备摆设
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#客户端192.168.0.21(单台源)
yuminstall-yrsync
touch/root/rsync.sh
cat>/root/rsync.sh<<EOF
#!/bin/bash
ip=$(cat/root/ip.txt)
#这里的ip.txt是ip地址就是你想把文件更新到那几台办事器上
src=/home/www/
date=`date+%Y-%m-%d`
des1=www
user1=www1
forhostin$ip
do
rsync-vzrtopg--delete--port=998--progress${src}${user1}@${host}::${des1}--password-file=/etc/www1.pwd&&
#这里的998是我本身指定的端口前面有解释
if[$?-eq0]
then
echo"${host},$date更新胜利">>/root/rsync.log2>&1
else
echo"${host},$date更新掉败">>/root/rsync.log2>&1
fi
done
1
2
3
echo"123">>/etc/www1.pwd
chmod600/etc/www1.pwd
chmod+x/root/rsync.sh
home/www目次权限必需是root.root才行
上面截图由于是真实情况目次屏障了
这里192.168.0.21是root@ceshi主机名字
root@localhostroot@abc分离为192.168.0.22,192.168.0.20主机名字
上面开端测试
2台主机那里都是空的
这里再说下ip.txt外面有甚么内容
1
2
3
[root@ceshidata]#vi/root/ip.txt
192.168.0.22
192.168.0.20
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
让我们运转剧本,见证事业
sh/root/rsync.sh
829100%809.57kB/s0:00:00(xfer#4,to-check=126/132)
wh/cq*
3877100%3.70MB/s0:00:00(xfer#5,to-check=125/132)
wh/nohup.out
1306196100%41.52MB/s0:00:00(xfer#6,to-check=124/132)
wh/server.ver
7287100%229.56kB/s0:00:00(xfer#7,to-check=123/132)
wh/server.ver.ver
37100%1.17kB/s0:00:00(xfer#8,to-check=122/132)
wh/wh*
13698828100%14.78MB/s0:00:00(xfer#9,to-check=121/132)
whserver/wh*
11259096100%6.72MB/s0:00:01(xfer#10,to-check=120/132)
wh/wh*
21539939100%10.81MB/s0:00:01(xfer#11,to-check=119/132)
wh/11233/
wh/abc/
wh/core/
wh/data/
wh/data/conf_*
1182100%1.28kB/s0:00:00(xfer#12,to-check=111/132)
wh/data/server.ver
7287100%7.91kB/s0:00:00(xfer#13,to-check=110/132)
wh/data/server.ver.ver
37100%0.04kB/s0:00:00(xfer#14,to-check=109/132)
wh/data/server.ver.zip
3063100%3.32kB/s0:00:00(xfer#15,to-check=108/132)
wh/data/versions.xml
564100%0.61kB/s0:00:00(xfer#16,to-check=107/132)
wh/data/gameconfs/
wh/data/gameconfs/*
6939100%7.51kB/s0:00:00(xfer#17,to-check=103/132)
wh/data/gameconfs/*
84401100%91.07kB/s0:00:00(xfer#18,to-check=102/132)
wh/data/gameconfs/*
106431100%114.59kB/s0:00:00(xfer#19,to-check=101/132)
wh/data/gameconfs/*
251564100%269.08kB/s0:00:00(xfer#20,to-check=100/132)
wh/data/gameconfs/*
1538100%1.65kB/s0:00:00(xfer#21,to-check=99/132)
wh/data/gameconfs/*30796100%32.90kB/s0:00:00(xfer#22,to-check=98/132)
sent19301219bytesreceived2275bytes4289665.33bytes/sec
totalsizeis96052675speedupis4.98
sendingincrementalfilelist
sent2501bytesreceived23bytes5048.00bytes/sec
totalsizeis96052675speedupis38055.73yinwe
这里的目次我都屏障了,公司隐蔽然则技巧可以分享
1
2
3
[root@ceshidata]#cat/root/rsync.log
192.168.0.22,2013-11-09更新胜利
192.168.0.20,2013-11-09更新胜利
这里人人有无发明成绩,防火墙开着的情形下为啥能拜访,其实我添加端口出来了
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#Firewallconfigurationwrittenbysystem-config-firewall
#Manualcustomizationofthisfileisnotrecommended.
*filter
:INPUTACCEPT[0:0]
:FORWARDACCEPT[0:0]
:OUTPUTACCEPT[0:0]
-AINPUT-mstate--stateESTABLISHED,RELATED-jACCEPT
-AINPUT-picmp-jACCEPT
-AINPUT-ilo-jACCEPT
-AINPUT-mstate--stateNEW-mtcp-ptcp--dport22-jACCEPT
-AINPUT-mstate--stateNEW-mtcp-ptcp--dport80-jACCEPT
-IINPUT-ptcp--dport998-jDROP
-IINPUT-s192.168.0.21/32-ptcp--dport998-jACCEPT
-AINPUT-jREJECT--reject-withicmp-host-prohibited
-AFORWARD-jREJECT--reject-withicmp-host-prohibited
COMMIT
只许可21能拜访998端口
这里完成了一路同步,假如个体同步怎样做,其实很简略,剧本曾经出来了,只需修正ip.txt就好了
这里我新建个文件夹
1
2
3
4
#正文失落不须要的ip地址
[root@ceshiwhserver]#vi/root/ip.txt
192.168.0.22
#192.168.0.20
1
2
3
4
5
6
[root@ceshiwhserver]#sh/root/rsync.sh
sendingincrementalfilelist
./
abc/
sent2523bytesreceived30bytes5106.00bytes/sec
totalsizeis96052675speedupis37623.45
如许的后果也到达了,平安也到达了,然则假如中间就做热备份2须要2台机子,怎样办,我们只须要在
1
2
3
vi/etc/rsyncd.conf
#只须要在这个设置装备摆设文件上修正这段话参加主机便可
hostsallow=192.168.0.21/255.255.255.255192.168.0.22/255.255.255.255
防火墙也是一样的
1
2
3
-IINPUT-ptcp--dport998-jDROP
-IINPUT-s192.168.0.21/32-ptcp--dport998-jACCEPT
-IINPUT-s192.168.0.20/32-ptcp--dport998-jACCEPT
如许既包管了平安也包管了别的的需求,也能够用监控及时监控只需挪动修正删除增长,都邑主动同步,然则不建议,假如你只须要更新几台办事器就用我这类方法。试验曾经完成,曾经同步测试。需求到达,而且端口可以自界说
1
2
/usr/bin/rsync--address=192.168.0.22--port=998--daemon他本身的端口
/usr/bin/rsync--address=192.168.0.21--port=998--daemon更新源端口
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们! |
|