rsync默认端口:873
xinetd默认服务
inotify参数详解
inotifywait
-r:递归
-q:只打印事件
-m:始终监听事件
--excludei:排除
--timefmt:时间格式
--format:输出的格式
-e:监控的事件:
access:文件或目录被读
modify:文件或目录被修改
attrib:文件或目录属性被改变
close:文件或目录被关闭
open:文件或目录被打开
moved_to:文件或目录被移走
move:文件或目录被移动来
create:建立
delete:删除
umount:卸载
inotifywait --mrq -e create /backup 监控目录被create的事件
服务器端:
1.mkdir /cicro/src
1.上传rsync-3.1.1.tar.gz和inotify-tools-3.14.tar.gz到cicro/src文件夹下
2.tar -xzvf rsync-3.1.1.tar.gz
3.tar -xzvf inotify-tools-3.14.tar.gz
4.cd inotify-tools-3.14
5../configure --prefix=/usr/local/inotify
6.make
7.make install
cd /proc/sys/fs/inotify/
-rw-r--r-- 1 root root 0 Mar 31 21:06 max_queued_events #限制文件
-rw-r--r-- 1 root root 0 Mar 31 21:06 max_user_instances
-rw-r--r-- 1 root root 0 Mar 31 21:06 max_user_watches
cd /usr/local/inotify/
mkdir conf
cd conf
vim inotfiy_list
/cicro/wcm
@/cicro/wcm/as/apache/logs
@/cicro/wcm/as/tomcat/logs
@/cicro/wcm/logs
@/cicro/wcm/license
9.cd ../rsync-3.1.1
10../configur --prefix=/usr/local/rsync
11.make
12.make install
mkdir /usr/local/rsync/{passwd,log,conf}
cd /usr/local/rsync/passwd/ #建立密码文件
echo "cicro123" > passwd.conf
chmod 600 passwd.conf
cd ../conf
vim exclude_list.conf
as/apache/logs/
as/tomcat/logs/
logs/
license/
脚本:
#!/bin/bash
#rsync+inotify
HOST=192.168.1.230
SRC=/cicro/wcm
DST=rsync
PASSWD=/usr/local/rsync/passwd/passwd.conf
INOTIFY_HOME=/usr/local/inotify
INOTIFY_EXCLUED=/usr/local/inotify/conf/inotfiy_list
RSYNC_HOME=/usr/local/rsync
RSYNC_EXCLUDE=/usr/local/rsync/conf/exclude_list.conf
USER=rsync
$INOTIFY_HOME/bin/inotifywait -mrq --exclude "(.log|.data)$" --fromfile $INOTIFY_EXCLUED --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e close_write,delete,create,attrib,moved_to,move $SRC | while read files
do
$RSYNC_HOME/bin/rsync -vzlHrtopg --delete --progress --password-file=$PASSWD --exclude-from $RSYNC_EXCLUDE $SRC $USER@$HOST::$DST
echo "${files} was rsynced" >>/$RSYNC_HOME/log/rsync.log 2>&1
done
客户端:
cd ../rsync-3.1.1
../configur --prefix=/usr/local/rsync
.make
.make install
cd /usr/local/rsync/
mkdir conf log passwd
cd conf
vim rsync.conf
uid = root
gid = root
use chroot = no
max connections = 10
strict modes = yes
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /usr/local/rsync/log/rsyncd.log #日志文件
[rsync] #对应服务器端的模式
path = /home #传过来文件所在位置
comment = web file
ignore errors
read only = no
write only = no
hosts allow = 192.168.2.233 #服务器ip
hosts deny = *
list = false
uid = root
gid = root
auth users = rsync #默认用户
secrets file = /usr/local/rsync/passwd/passwd.conf #密码文件
cd ../passwd
vim passwd.conf
rsync:cicro123
chmod 600 /usr/local/rsync/passwd/passwd.conf
/usr/local/rsync/bin/rsync --daemon --config=/usr/local/rsync/conf/rsync.conf 修改配置文件,须要写到开机脚本
service xinetd restart
chkconfig xinetd on
不须要发送的文件夹:
/cicro/wcm/as/apache/logs
/cicro/wcm/as/tomcat/logs
/cicro/wcm/logs
/cicro/wcm/license
web