当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > Rsync Server +Rsync client 配置完全实践笔记

Unix/Linux
Linux系统下配置CVS服务器
Linux内核 Kernel 最新稳定版2.6.26发布
LINUX系统2.4内核升级到2.6内核
Linux系统下添加硬盘+分区+格式化详解
Linux下的安装和配置DNS服务器
自动备份Linux/Unix服务器的数据
Windows系统下通过xmanager远程桌面控制Linux
LINUX系统下JRE的安装
LINUX桌面环境 KDE 4.1 RC1发布下载
Linux系统下卸载自带Mysql、Apache、Php
Linux系统下监控和调整机器温度
Linux系统下生成引导盘与驱动程序盘的方法
Linux Mint 5 XFCE Community Edition RC1 (BETA 025) 本月17日开始发布
Linux下关闭不必要的系统服务以加快速度
Red Hat Enterprise Linux AS release 4 apache+MYsql+PHP的安装和优化
详解Linux系统日志管理
简单查看linux64位/32位的命令!
用rsync实现网站镜像和备份
以root身份telnet连接LINUX服务器
linux系统strace命令用法

Unix/Linux 中的 Rsync Server +Rsync client 配置完全实践笔记


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 160 ::
收藏到网摘: n/a



环境:
Rsync Server 192.168.0.160 Rsync Client 192.168.0.159 (一)配置Rsync Server 1.安装rsync2.6.5 ./configure --prefix=/opt/rsync2.6.5 make make install 2.配置以服务器模式启动 #vi /etc/xinetd.d/rsync # default: off # description: The rsync server is a good addition to an ftp server, as it # allows crc checksumming etc. service rsync { disable = no socket_type = stream wait = no user = root server = /usr/bin/rsync server_args = --daemon --config=/opt/rsync2.6.5/etc/rsyncd.conf log_on_failure += USERID } 3.建立服务器端目录结构 etc man var 4.配置服务器端配置文件 #vi /opt/rsync2.6.5/etc/rsyncd.conf log file = /opt/rsync2.6.5/var/rsyncd.log pid file = /opt/rsync2.6.5/var/rsyncd.pid lock file = /opt/rsync2.6.5/var/rsyncd.lock secrets file = /opt/rsync2.6.5/etc/rsyncd.secrets motd file = /opt/rsync2.6.5/etc/rsyncd.motd read only = yes hosts allow = 192.168.0.159 hosts deny = 192.168.100.0/24 list = yes uid = root gid = root use chroot = no max connections = 4 syslog facility = local5 [mailstore] path = /mss comment = whole mailstore area auth users = mailstore [maildb] path = /db comment = db data auth users = maildb [maildatabase] path = /var/lib/mysql/userdb comment = mysql databases auth users = maildatabase # vi /opt/rsync2.6.5/etc/rsyncd.secrets mailstore:123456 maildb:maildb maildatabase:maildatabase 5.设置服务器端配置文件的权限

# chmod 600 rsyncd.conf rsyncd.secrets -rw------- 1 root root 795 Aug 23 06:21 rsyncd.conf-rw------- 1 root root 37 Aug 23 06:23 rsyncd.secrets(注意:这个安全设置很重要,如果不这样做客户机连接服务器时会提示:
@ERROR: auth failed on module smb_recover_filesrsync: connection unexpectedly closed (102 bytes read so far)rsync error: error in rsync protocol data stream (code 12) at io.c(165)服务器端日志将出现错误提示:
2005/08/23 06:32:01 [8388] secrets file must not be other-accessible (see strict modes option)2005/08/23 06:32:01 [8388] continuing without secrets file2005/08/23 06:32:01 [8388] auth failed on module smb_recover_files from documentserver (192.168.0.159))(二)配置Rsync Client 1.安装Rsync2。6。5 ./configure --prefix=/opt/rsync2.6.5 make make install 2.编写自动连接服务器端脚本,该脚本可以同时连接多个Rsync Server服务器,并可以从一个Rsync Server同时连接多个备份点。 # vi rsync_client.sh #!/bin/sh # shenxiaoran/foundir.com 2005.7.20 # This script gets files from server to local directory to backup. # It's a month rotating incremental backup. # [ -f /etc/profile ] && . /etc/profile PROG=/usr/bin/rsync MAILSTORE=/data/mss MAILDB=/data/db MAILDATABASE=/data/userdb DATE=`date +%d` BACK_POINT1=mailstore BACK_POINT2=maildb BACK_POINT3=maildatabase BACK_OLD_DIR1=$MAILSTORE/mss_old/$DATE BACK_OLD_DIR2=$MAILDB/db_old/$DATE BACK_OLD_DIR3=$MAILDATABASE/userdb_old/$DATE LOGFILE=./rsync.log [ -d $BACK_OLD_DIR ] && rm -fr $BACK_OLD_DIR OPTS1="--force --ignore-errors -pogt --delete --backup --backup-dir=$BACK_OLD_DIR1 -az" OPTS2="--force --ignore-errors -pogt --delete --backup --backup-dir=$BACK_OLD_DIR2 -az" OPTS3="--force --ignore-errors -pogt --delete --backup --backup-dir=$BACK_OLD_DIR3 -az" echo "##############################################" >>$LOGFILE 2>&1 echo "Begin Time: `date`" >>$LOGFILE 2>&1 SERVER1="[email protected]" export RSYNC_PASSWORD=123456 $PROG $OPTS1 $SERVER1::$BACK_POINT1 $MAILSTORE >>$LOGFILE 2>&1 SERVER2="[email protected]" export RSYNC_PASSWORD=maildb $PROG $OPTS2 $SERVER2::$BACK_POINT2 $MAILDB >>$LOGFILE 2>&1 SERVER3="[email protected]" export RSYNC_PASSWORD=maildatabase $PROG $OPTS3 $SERVER3::$BACK_POINT3 $MAILDATABASE >>$LOGFILE 2>&1 echo "End Time: `date`" >>$LOGFILE 2>&1 echo "########################################" >>$LOGFILE 2>&1