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

Unix/Linux
最新FreeBSD7.0下载
FreeBSD7.0编译安装nginx+php+mysql
FreeBSD下如何增加静态路由的方法
如何让FreeBSD上运行Windows软件
UNIX让普通用户具备关机权限的操作方法
FreeBSD6.2上搭建apache2.2.4+mysql5.1.7+php5.2.1+phpmyadmin
“incorrect super block” FreeBSD挂载CDROM时报错误的解决方法
FreeBSD操作系统下修改ip地址及捆定多个IP地址
FreeBSD的一些简单使用技巧
BSD系统让某个用户登陆就关机的办法
如何查看Freebsd 查看硬件信息
在Linux和FreeBSD下如何使用U盘
FreeBSD常用命令和packages使用方法讲解
FreeBSD常用命令--ports使用方法讲解
FreeBSD学习指南
FreeBSD在安装ports时时间过长的解决方法
FreeBSD实现3D桌面
FreeBSD下如何安装ports的方法
FREEBSD让root用户远程ssh登录的方法
FreeBSD6.0中文安装全过程

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 143 ::
收藏到网摘: 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