Normal
0
7.8 磅
0
2
false
false
false
EN-US
ZH-CN
X-NONE1、操作系统版本:
Red Hat Enterprise Linux Server release 5.4 (Tikanga)
KERNEL:2.6.18-164.el5
2、需要安装的文件:
inotify-tools-3.13.tar.gz
librsync-0.9.7.tar.gz
libgcrypt-1.4.4.tar.gz
libgpg-error-1.7.tar.gz
libtasn1-2.1.tar.gz
gnutls-2.6.6.tar.bz2
sqlite-2.8.17.tar.gz
sqlite-autoconf-3070900.tar.gz
csync2-1.34.tar.gz
注意安装顺序,最后安装csync2,并且在安装csync2前,需要做以下操作:
# echo "/usr/local/lib" >>
/etc/ld.so.conf
# echo "csync2 30865/tcp" >>
/etc/services
# ldconfig
3、安装csync2
4、在相应服务器上创建
# mkdir /data/csync_backup //创建备份相关的目录
以下操作只需要在单台服务器上进行操作:
1、安装完csync2后,在安装目录内运行make cert会生成相应的口令文件,如果
没有运行make cert,那么需要手动执行命令:
# openssl genrsa -out /etc/csync2_ssl_key.pem 1024
# openssl req -new -key /etc/csync2_ssl_key.pem -out
/etc/csync2_ssl_cert.csr
# openssl x509 -req -days 600 -in
/etc/csync2_ssl_cert.csr -signkey /etc/csync2_ssl_key.pem \
-out /etc/csync2_ssl_cert.pem
2、# cd /etc/xinetd.d目录内,创建文件csync2,内容如下
service csync2
{
disable = no
protocol =
tcp
flags = REUSE
socket_type =
stream
wait = no
user = root
group = root
server =
/usr/local/sbin/csync2
server_args =
-i
}
3、
# csync2 -k /etc/csync2.key
4、
# vi /etc/csync2.cfg
#nossl * *;
group mygroup
{
host jtecp2 jtecp1; //定义组成员
key /etc/csync2.key;
include /app/tomcat; //需要同步的目录
exclude /app/tomcat/log; //需要排除的目录。
exclude *~ .*; //排除同步.开头的文件
action
{
pattern *;
logfile
"/var/log/csync2_action.log";
do-local;
}
backup-directory
/data/csync_backup; //防错备份目录,根据自己的需求设置。
backup-generations
3;
auto younger;
//同步以最新的文件为标准更新.
}
5、
# cd /usr/local/sbin
# vi csync2.sh
#!/bin/bash
src=/app/tomcat
/usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T
%w%f' \
--exclude
"\.swp$" \
-e
close_write,modify,delete,create,attrib \
${src} \
| while read
file
do
#csync2 -x
>/dev/null 2>&1
csync2 -xv
echo
"${src} was csynced....."
done >>
/var/log/csync2.log 2>&1
6、将以上单机产生的文件拷贝到另一台机器
主要是/etc/csync2*
/usr/local/sbin/csync2.sh
7、
# service xinetd restart
# chmod a+x csync2.sh
# ./csync2.sh //分别在三台机器上创建并执行此脚本,并将其加入/etc/rc中
遇到错误:
在安装csync2的时候,出现了与cfgfile_scanner.c文件编译相关错误,
我的系统主要是缺少了gcc-c++-4.1.2-46.el5.x86_64.rpm这个包!