设为首页 收藏本站
查看: 2142|回复: 6

[经验分享] rsync实现Linux服务器数据同步

[复制链接]

尚未签到

发表于 2013-4-15 08:58:59 | 显示全部楼层 |阅读模式

在日常工作经常需要对服务器的数据进行备份,如异地备,必须通过网络将数据传输到远程服务器端做备份。对于这类事务,如果单纯通过手工去操作的话,不仅效率低,而且会很烦锁。虽然很多商业类备份软件可以提供解决方法,但是它们高昂的价格却不是每个企业都可以承受的。幸好,Linux本身就有很多优秀的开源方案,rsync就是在这方面很出色的开源软件,它的功能强大,能很好的处理这类需求。

     rysnc是一款数据文件同步工具,在文件传输方面,它有着很多优点。它能够对整个目录树和文件系统进行更新,它使用“rsync算法”来检测文件之间所做的更改,采取增量方式同步文件,从而提高了文件传输的效率。同时,在传输中还可以保持原有文件的权限、属主和时间等属性不变。在安全方面,rsync可使用ssh方式来传输,从而保证了传输过程数据的安全。
    下面介绍一下rsync的安装使用,操作环境如下:服务器A为rsync服务器,服务器B配置为rsync客户端,我们通过rsync使A的文件同步到B服务器上做为备份。            

                220859522.jpg

服务器A设置:

1. 安装rsync。rsync主页为http://rsync.samba.org ,可在这里下载最新源码包进行安装,目前的版本为rsync-3.0.9.tar.gz。

tar -zxvf rsync-3.0.9.tar.gz
cd rsync-3.0.9
./configure
make
make instal

2.创建rsync 同步目录/data,此目录里面的内容将同步到远程服务器上。
mkdir /data

3.创建密码文件,此文件用于存放rsync同步时使用的帐号密码,格式为“用户名:密码”,该用户是与操作系统分离的,系统上不需要创建此用户。rsync的密码文件可使用任意名称。
vi /etc/rsyncd.pass  
alex:123456

密码文件权限需修改为600,
chmod 600 /etc/rsyncd.pass


4.创建 rsync 配置文件/etc/rsync.conf,默认是没有这个文件的,需要手工创建。rsync的配置文件使用模块化结构,包含全局参数和模块参数,全局参数是通用的配置。每个模块代表着一个目录树的同步,模块定义从[]中的模块名开始,到下一个模块定义开始。
rsync.conf配置如下:
--------------------------------------------------------------------------------------
uid=root      #该选项指定当该模块传输文件时守护进程应该具有的uid,
              配合gid选项使用可以确定rsync具有访问那些文件夹的              
              权限,默认值是"nobody",我们可以根据相应的需要进行配置。
uid=root     #该选项指定当该模块传输文件时守护进程应该具有的gid,
              默认值是”nobody”。
use chroot=no                     #不使用chroot
max connections=20                #设置最大连接数,默认为0,即无限制。这里设置为20.
strict mode =yes                  #设置是否检查口令文件的权限
pid file=/var/run/rsyncd.pid      #指定rysnc进程的pid文件位置
lock file=/var/lock/rsync.lock    #指定支持max connections的锁文件
log file=/var/log/rsyncd.log      #指定 rsync日志输出路径

[model1]                            #模块名,可使用任意名称
path=/data/                        #源目录路径
comment=Test rsync                 #模块描述
ignore errors                      #出现I/O错误时可忽略。
read only=no                       #是否只读,设置为no时客户端可上传文件。
write only=no                      #设置为no 时客户端可下载文件。
hosts allow=192.168.0.20           #允许访问主机
hosts deny=*                       #拒绝访问的主机,*表示所有主机。
list=false                         #设置客户端请求时是否列出该模块,false为隐藏。                 
auth users=alex                    #设置连接时使用的用户,即密码文件里面定义的用户名。
secrets file=/etc/rsyncd.pass      #指定密码文件位置
----------------------------------------------------

5.启动rsync守护进程
/usr/local/bin/rsync --daemon

rsync的默认端口为873,通过命令netstat –lnpt可以查看是否已正常启动。

204655767.jpg

到这一步rysnc服务器上的配置就已经完成了,我们在目录/data中创建两个文件 123.txt和 abc.log,用来做同步的测试,下面我们可以到服务器B上去验证一下。

服务器B 配置
1. 安装rsync。
2. 配置密码文件,里面写入与服务器A上相同的密码,但不需要再写帐号名。
vi /etc/rsyncd.pass
123456
3. 创建备份的文件夹
mkdir /backup

4. 同步操作,使用如下命令从服务器A下载文件。
/usr/local/bin/rsync –vzrtopg –delete --progress --exclude “*.log”  alex@192.168.0.10::model1/backup  --password-file=/etc/rsyncd.pass

该命令的解释如下:
-v即--verbose   显示传输的详细信息
-z 即--compress 传输时对文件进行压缩
-r 即—recursive 对子目录进行递归处理
-t 即—times    保持文件的时间信息
-o即—owner  用来保持文件的属主信息
-p 即 --perms 保持文件权限
g 即 –group 保持文件属组信息
--delete  以rsync服务器为基准保持数据同步,如果服务器删除了某一文件,客户端也会删掉。
--progress 显示出详细的进度情况。
--exclude 用于排除不需要的文件类型。
alex@192.168.0.10::model1   指定备份的服务器和相关的模块, alex 为服务器A上面设置的
                            rsync同步帐号,得注意服务器IP与模块名之间为双冒号“::”。  
  
/backup 指定备份的文件在客户端上的存放位置 。
--password-file=/etc/rsyncd.pass 指定客户端存放密码文件的位置。

现在,我们可以查看备份目录/backup,看到已经与A服务器上的/date完成了同步,同时排除了我们不想要同步的文件。

204746517.jpg

5.       如果我们需要定时同步,如一小时同步一次,只需把该命令加到计划任务即可。

* 1 * * *  /usr/local/bin/rsync –vzrtopg –delete --progress --exclude “*.log”  alex@192.168.0.10::model1 /backup  --password-file=/etc/rsyncd.pass

至此,rsync的同步设置完成。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-5212-1-1.html 上篇帖子: redhat5.4下lamp源码安装 下篇帖子: CentOS下的Pdns+Poweradmin 服务器 数据 Linux

尚未签到

发表于 2013-4-15 09:02:21 | 显示全部楼层
.其实我是一个天才,可惜天妒英才!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-5-23 07:24:09 | 显示全部楼层
找到好贴不容易,我顶你了,谢了

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-6 10:52:43 | 显示全部楼层
如果跟导师讲不清楚,那么就把他搞胡涂吧!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-20 14:42:45 | 显示全部楼层
我是个凑数的。。。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-28 05:44:28 | 显示全部楼层
我的id是假冒的,大家不要相信我是骗子。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

累计签到:1 天
连续签到:1 天
发表于 2013-8-17 18:30:18 | 显示全部楼层
如果恐龙是人,那人是什么?

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表