注意事项:
1、主服务器上有配置文件,从服务器上没有配置文件
2、用户名的密码不用跟主机密码一致;
目标:多服务器文件同步
环境
:2
台
centos5.5
web:10.80.11.243
backup:10.80.11.244
撰写人:
hx10
日期:
2010/6/2
hangzhou
Blog:http://hi.baidu.com/hx10
第一部分:简单的数据备份
第一步:服务器端的配置
#rpm –qa |grep rsync
如果没有的话,则自行下载安装
#cd
/usr/local/src
#
wget http://www.samba.org/ftp/rsync/src-previews/rsync-3.0.6pre1.tar.gz
#tar –zxvf rsync-3.0.6pre1.tar.gz
#cd rsync-3.0.6pre1
#./configure && make && make install
假设
web
服务器有三个目录需要备份
/www
/home/web_user1/
/home/web_user2/
创建
rsync
的配置文件
#vim /etc/rsyncd.conf
uid = nobody
gid = nobody
use chroot = no
max connections = 4
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[www]
path = /www/
ignore errors
read only = true
list = false
hosts allow = 10.80.11.244
hosts deny = 0.0.0.0/32
auth users = backup
secrets file = /etc/backserver.pas
[web_user1]
path = /home/web_user1/
ignore errors
read only = true
list = false
hosts allow = 10.80.11.244
hosts deny = 0.0.0.0/32
uid = web_user1
gid = web_user1
auth users = backup
secrets file = /etc/backserver.pas
[web_user2]
path = /home/web_user2/
ignore errors
read only = true
list = false
hosts allow = 10.80.11.244
hosts deny = 0.0.0.0/32
uid = web_user2
gid = web_user2
auth users = backup
secrets file = /etc/backserver.pas
备注:
uid = nobody //
指定文件传输过程中的用户身份
gid = nobody // 指定文件传输过程中的组身份
gid = nobody // 指定文件传输过程中的组身份
log file = /var/log/rsyncd.log //
指定使用独立的日志文件的位置
pid file = /var/run/rsyncd.pid // 保存 pid 到指定文件,以便于使用脚本终止进程
pid file = /var/run/rsyncd.pid // 保存 pid 到指定文件,以便于使用脚本终止进程
read only = yes //
该目录设置为只读,即只允许客户端下行同步,不允许上传。若需要进行从备份机还原数据,改为
no
rsyncd
默认在
873
端口监听服务,可在客户端使用
telnet
连接测
密码文件为
/etc/backserver.pas
#vim /etc/backserver.pas
backup:123456
格式为:用户名
:
密码
设置密码文件仅仅
root
用户能访问
#chmod 600 /etc/backserver.pas
然后建立备份用户
#useradd backup
#passwd backup
在服务器端启动
rsync
服务
#
nohup rsync --daemon &
第二步:备份端的配置
安装
rsync
软件,同上
设置密码文件
#vim /etc/rsync.pas
123456
在客户端不需要加用户名,只需要加密码,同时设置为只有
root
有权限
#chmod 600 /etc/rsync.pass
创建备份目录
#mkdir-p /backup/www
#mkdir -p /backup/web_user1
#mkdir -p /backup/web_user2
把服务器端文件
www
模块备份到本机
#/usr/bin/rsync
-vzrtopg --delete --exclude "logs/" --exclude "conf/ssl.*/" --progress
backup@10.80.11.243::www /backup/www/ --password-file=/etc/rsync.pass
--delete
是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致
,
删除本地目录中多余的文件
-- exclude "logs/"
表示不对
/www/logs
目录下的文件进行备份。
--exclude "conf/ssl.*/"
表示不对
/www/conf/ssl.*/
目录下的文件进行备份。
对其他的模块的备份如下:
#/usr/bin/rsync
-vzrtopg --delete --exclude "logs/" --exclude "conf/ssl.*/" --progress
backup@10.80.11.243::web_user1 /backup/web_user1/
--password-file=/etc/rsync.pass
#/usr/bin/rsync
-vzrtopg --delete --exclude "logs/" --exclude "conf/ssl.*/" --progress
backup@10.80.11.243:: web_user2 /backup/web_user2/
--password-file=/etc/rsync.pass
如果提示以下错误
@ERROR: invalid uid web_user2
rsync error: error starting client-server protocol (code 5) at main.c(1503) [receiver=3.0.6pre1]
则需要修改
web
服务器上的
web_user2
的
uid
和
gid
注释掉
定时备份的话,在
crontab –e
里面设置
附
:
备份脚本,可以加入
crontab,
按时自动备份(
backup
服务器上运行)
#!/bin/bash
DATE=`date
+%w`
rsync -tvzrp -e ssh --progress --delete backup@10.80.11.244::www /backup/www/$DATE
--password-file=/etc/rsync.pass > /var/log/test.$DATE
mail -s "Backup is done" yhl5555@126.com < /var/log/test.$DATE
发表评论
-
在linux网站运维方向老男孩最近几年常用的免费的开源软件
2013-02-18 23:35 1529http://blog.chinaunix.net/uid- ... -
rsync服务部署
2013-02-18 22:40 825http://oplinux.com/app/rsync/r ... -
centos6.0 配置SVN
2013-02-04 14:52 935http://blog.csdn.net/tonysz12 ... -
Centos搭建SVN服务器三步曲
2013-02-04 12:09 827搭建SVN服务,有效的管理代码,以下三步可以快速搞定。1、安 ... -
linux(centos)如何使用svn进行多个版本库的配置
2013-02-04 12:08 3484如果当前有svnserve进程在运行,指令 ... -
MySQL CMake参数说明手册
2012-12-24 10:52 739http://www.sunchis.com/html/db/ ... -
Nginx下搭建flv视频服务器且支持视频拖动进度条播放
2012-12-19 18:10 1130目前,由于Flash 的流行,网络上绝大多数的微视频网站 ... -
如何查询centos查看系统内核版本,系统版本,32位还是64位
2012-12-15 11:13 1129http://hi.baidu.com/tjbaso/item ... -
linux下磁盘I/O查看
2012-12-07 13:11 746http://zlbzhu.blog.51cto.co ... -
Centos5.5最小化安装后的优化
2012-11-20 23:16 1151购买了服务器(现在主流 ... -
CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13+博客系统WordPress3.3.2
2012-11-11 23:37 972说明: 操作系统:CentOS 6.2 32 ... -
CentOS minimal 版安装图形界面的步骤分享,中文语言包.
2012-11-11 22:33 6881、连接网络: CentOS minimal.iso安装好 ... -
CentOS 6.3编译安装Nginx1.2.2+MySQL5.5.25a+PHP5.4.5
2012-11-04 19:56 842说明: 操作系统:CentOS 6.3 32位 系 ... -
[HTML5]配置Ngnix服务器支持manifest 离线存储
2012-10-08 14:09 1302[HTML5]配 ... -
RSync实现文件备份同步
2012-09-21 12:20 712http://www.cnblogs.com/itech/ar ... -
CentOS 5 + rsync 同步2台服务器的文件
2012-09-21 12:11 792当需要把服务器上的文件复制到另外的机器上,可用rsync来同步 ... -
Rsync命令参数详解
2012-10-08 14:06 682在对rsync服务器配置结束以后,下一步就需要在客户端发出rs ... -
rsync
2012-09-20 18:40 1067rsync两种模式:远程shell ... -
Linux下SVN服务器搭建(CentOS+Subversion)
2012-09-20 09:52 696本文主要介绍SVN独立服 ... -
Nginx配置详解
2012-09-20 09:38 956#运行用户 user www www; ...
相关推荐
linux中rsync异步服务器实现文件同步与备份.docx
使用Linux的rsync命令实现多服务器镜像同步.doc
使用Linux的rsync命令实现多服务器镜像同步.docx
rsync,remote synchronize顾名思意就知道它是一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。本文档提供rsync的配置,实现远程服务器定时备份的功能。
rsync+inotify实现服务器之间文件实时+双向同步,里面有完整的操作步骤、linux命令以及注意事项
linux发行版中大多都自带rsync,不过版本比较低,一般都是2.6.X 在2.X的版本中,rsync备份时都是先列表再备份(添加或者删除),在处理大量文件时,会耗费比较多的内存。 备份的时候,rsync扫描到的每个文件(目录也...
本文档主要是讲解rsync 的源码安装部署过程以及如何利用rsync实现服务器之间的数据同步,同时利用sersync实现实时同步,当然也可以利用计划任务来打到相同的效果。
用Rsync实现windows下同步linux服务器的数据 - OS_Performance - 博客园
rsync是用 “rsync 算法”提供了一个客户机和远程文件服务器的文件同步的快速方法,而且可以通过ssh方式来传输文件,这样其保密性也非常好,另外它还是免费的软件。 rsync 包括如下的一些特性: 能更新整个目录...
套用网上的解释:rsync是在Linux和UNIX上广泛使用的文件传输和同步程序。此软件相当强大,经过一些配置之后,可以让你从此以后的同步备份工作变得极其简单、轻松。该软件有Windows下的版本,叫做cwRsync。
3.2 rsync服务器的配置文件 4 架设rsync服务器的示例说明 4.1 全局定义 4.2 模块定义 5 启动rsync 服务器及防火墙的设置; 5.1 启动rsync服务器; 5.2 rsync服务器和防火墙; 6 通过rsync客户端来同步数据; 6.1 列...
windows做为文件服务器,使用rsync的windows服务版本:cwRsyncServer 下载地址:http://rsync.samba.org 安装过程要设置用于系统服务的帐号和密码,可以默认。 注:此帐号用于启用crsync server服务,需要分配给帐号...
主要介绍了rsync+inotify实现服务器之间文件实时同步,需要的朋友可以参考下
rsync是用 “rsync 算法”提供了一个客户机和远程文件服务器的文件同步的快速方法,而且可以通过ssh方式来传输文件,这样其保密性也非常好,另外它还是免费的软件。 rsync 包括如下的一些特性: 能更新整个目录...
介绍了rsync同步工具和inotify实时更新检测工具以及如何在2台linux服务器上进行对某一目录进行实时同步(一旦一台服务器上的内容有修改,自动同步到另一台上)。
服务器之间常常要保持些文件或目录的一致,比如一些大的软件下载网站,它们通常使用多台服 务器来提供下载服务。