1.200服务器设置
由于200服务器需要设置自动更新206的文件采用rsync+inotify
进行部署
安装两个软件包
软件包:rsync-3.0.9.tar.gz inotify-tools-3.14.tar.gz
在200上安装软件
tar xzvf rsync-3.0.9.tar.gz
cd rsync-3.0.9
./configure –prefix=/usr/local/rsync && make && make install
建立密码认证文件 用于连接206时使用
echo “aaaaaa” > /usr/local/rsync/rsync.pas 是指206的密码
chmod 600 /usr/local/rsync/rsync.pas
安装inotify
tar zxvf inotify-tools-3.14.tar.gz
cd inotify-tools-3.14
./configure –prefix=/usr/local/inotify && make && make install
在200增加自动同步SHELL脚本
/usr/local/inotify/rsync.sh
1 #!/bin/bash
2 src="/backup/site" //200同步的目标目录
3 des="admin@192.168.1.206::fbeads.cn" //206同步的项目 格式 用户名@ip::项目名称
4 /usr/local/inotify/bin/inotifywait -mrq -e modify,delete,create,attrib ${src} | while read x
5 do
6 /usr/local/rsync/bin/rsync -vzrtopg --delete --progress ${des} ${src} --password-file=/usr/local/rsync/rsync.pas &&
7 echo "${x} was rsynce" >>/usr/local/rsync/rsync.log
8 done
手工测试同步
/usr/local/rsync/bin/rsync -vzrtopg --delete --progress admin@192.168.1.206::fbeads.cn /backup/site --password-file=/usr/local/rsync/rsync.pas
206配置
安装rsync
tar xzvf rsync-3.0.9.tar.gz
cd rsync-3.0.9
./configure –prefix=/usr/local/rsync && make && make install
建立密码文件
echo “admin:aaaaaa” > /usr/rsync.pas
chmod 600 /usr/rsync.pas
在/etc下建议配置文件
vi /etc/rsyncd.conf
内容如下
uid=root
gid=root
use chroot=no
max connections=4
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsync.lock
log file=/var/log/rsyncd.log
[fbeads.cn] //项目名称
path=/data/www/fbeads.cn //同步的项目下的文件
ignore errors
read only=true
list=false
hosts allow=192.168.1.200 //允许的IP
hosts deny=0.0.0.0/32 //拒绝的IP
auth users=admin //206的用户名
secrets file=/usr/rsync.pas //密码文件
开启rysnc并使用配置文件
cd /etc
rsync --daemon --config=/etc/rsyncd.conf
回到200服务器,运行自动执行使用后台执行SHELL脚本
cd /etc
sh /usr/local/inotify/rsync.sh &