文档章节

技巧:Linux rsync 同步由手动到自动

李长春
 李长春
发布于 2012/02/01 18:25
字数 1020
阅读 168
收藏 0

rsync 是一个快速增量文件传输工具,它可以用于在同一主机备份内部的备分,我们还可以把它作为不同主机网络备份工具之用。本文主要讲述的是如何自架rsync服务器,以实现文件传输、备份和镜像。相对tar和wget来说,rsync 也有其自身的优点,比如速度快、安全、高效;

手动的:

首先要建立好两台服务器之间的公钥和密钥,那样就不需要每次都输入密码,也可以实现自动了。

可以先使用rpm -qa |grep rsync 查看rsync是否已经安装,软件下载 Rysnc的主页地址为:http://rsync.samba.org/

本试验的测试环境(2台,一个服务端,一个客户端)

rsync服务端的ip:192.168.48.60

rsync客户端的ip:192.168.48.148

-----------------------------------------------

以下先配置服务器端:

1. 安装rsync包

# rpm -q rsync

rsync-2.6.3-1

2. rsync只使用一个配置文件就是/etc/rsyncd.conf 这个文件一般是没有的,那就自己建一个好了

# vi /etc/rsyncd.conf

uid = nobody

gid = nobody

max connections = 200

timeout = 600

use chroot = no

read only = yes

pid file=/var/run/rsyncd.pid

host_allow =192.168.48.148 //客户端的IP地址写在这里

#syslog facility = local7

#log file=/var/log/rsyncd.log

#rsync config

#The 'standard' things

[rsync_gmmold] //定义同步的路径(客户端用这个关键字链接)

path = /home //需要同步的路径

comment = gmmold //这个暂不知道

3.启动服务

#/usr/bin/rsync --daemon 最后在server端将rsync以守护进程形式启动, rsync启动的端口为 873端口

4.加入开机启动

echo "/usr/bin/rsync --daemon" >> /etc/rc.local

5.检查rsync时候启动

# ps -ef | grep rsync

6.停止服务

#kill `cat /var/run/rsyncd.pid`

以下是客户端的配置:

1. 安装rsync包

[root@rhel403 old]# rpm -q rsync

rsync-2.6.3-1

2. 与服务器端同步:

#rsync -ave ssh root@192.168.48.60:/home/ /home/ganfic/laji/ //把60机子的/home下的文件同步备份到/home/ganfic/laji/

自动同步备份:

1. 在tmp下建一个b.sh文件

#vi /tmp/b.sh

把以下内容写到里面去

#!bin/sh

rsync -ave ssh root@192.168.48.60:/home/ /home/ganfic/laji/

:wq

2 第2步就要涉及到crontab了,在命令行输入

#crontab -e

然后把 * * * * * sh /tmp/b.sh //* * * * *部分代表每一分钟,然后 sh /tmp/b.sh 表示运行 b.sh脚本(在下面我再补充说明),-e 使用环境变量EDITOR或RVISUAL指定的编辑器编辑crontab文件。新创建的crontab文件会放在/var/spool/cron目录下,文件名就是用户名,用cd /var/spool/cron后 会看到用户文件,然后用 vi root(我是在root用户下的)就会看到* * * * * sh /tmp/b.sh已经被转到这里来了。

这样就完成了,之后就是看看 有没有运行了,打开日志文件,日志文件在 #vi /var/log/cron 就会看到有没有运行了,也可以这样,在没有用自动运行之前,我们是用手动操作的,那时也把60的机子的/home目录下的文件拷了下来,那样,我们进本机的/home/ganfic/laji文件夹里就会看到60机子下/home的内容,把这些内容都删了,然后再过1分钟看会不会把内容再补上,有的话就是成功了。

Linux 防火墙是用iptables,所以我们至少在服务器端要让你所定义的rsync 服务器端口通过,客户端上也应该让通过。

iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT

启动rsync服务:

/usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf

$rsync_HOME/rsync --daemon --config=/etc/rsyncd/rsyncd.conf

补充:

rsync 的相关知识:

rsync命令的用法

在配置完rsync服务器后,就可以从客户端发出rsync命令来实现各种同步的操作。rsync有很多功能选项,下面就对介绍一下常用的选项:

rsync的命令格式可以为:

1. rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST

2. rsync [OPTION]... [USER@]HOST:SRC DEST

3. rsync [OPTION]... SRC [SRC]... DEST

4. rsync [OPTION]... [USER@]HOST::SRC [DEST]

5. rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST

6. rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]

本文转载自:http://os.yesky.com/351/9324351.shtml

李长春
粉丝 81
博文 249
码字总数 117406
作品 0
海淀
私信 提问
rsync实现免密码操作的一种实现方式

rsync实现免密码操作的一种实现方式 Posted on 2016-06-30 09:23 shihuc 阅读(10030) 评论(0) 编辑 收藏 rsync是远程文件同步协议,在linux系统下,操作服务器之间的文件同步,是非常方便高效...

rootliu
2018/01/31
0
0
rsync写成sell脚本并结合crontab自动同步备份网站数据

使用rsync的优势是巨大的,首先是速度快,第一次同步时rsync会复制全部内容,但在下一次只传输修改过的文件,其次,做成sell脚本可以结合crontab实现自动同步备份网站数据,下面我们一步步来...

sliuyu
2013/01/07
0
0
rsync , rsync + ssh, rsync + lsyncd 多种同步方案与比较

利用 ssh+rsync 只需要在服务器端打开 ssh 服务, 并启动 xinetd 中 rsync 服务则可使用 a. 增量同步 rsync -av /src-dir/. user@ipadress:/dest-dir/. b. 镜像同步 rsync -av --delete /src-...

文弱书生_罗剑
2015/08/19
0
0
sersync+rsync实时同步配置案例

目前业内比较靠谱的同步解决方案有: rsync+inotify-tools,Openduckbill+inotify-tools和rsync+sersync 前两者由于是基于脚本语言编写,所以规范程度,执行效率相对rsync+sersync就稍微弱一...

feilong0663
2018/07/03
0
0
Linux rsync 同步实践

公司网站 有两台服务器 A、B,做了动静分离,A上为静态服务器安装有nginx,B为Tomcat容器。访问时,通过A的nginx 做反向代理,静态文件http请求,目录statics直接访问A服务器上的静态文件。 ...

从前
2013/06/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

spring cloud Zuul API网关服务的学习(1)

在学习了spring cloud的Eureka注册服务,Ribbon客户端负载均衡,Hystrix断路器,已经声明式服务调用Feign后,我们现在理解微服务的架构如下图所示 在整个系统架构对外提供服务时,当客户端应...

太猪-YJ
9分钟前
1
0
决定分库分表的原因有哪些?

写在前面 前几天梁大发表了mysql单表500w数据分表的铁律,也参与了回复,结果同一天隔壁组面试,正好问了下面试者这个问题,面试官想在多方面考察面试者技术扎实程度,结果面试者回答的不好,...

春哥大魔王的博客
9分钟前
4
0
既然反射可以拿到私有成员变量 那private关键字有啥用?

private的意义是什么? 这个网上似乎都有标准答案了,看过之后,我总结如下: private并不是解决安全问题的,如果想让解决代码的安全问题,请用别的办法。 private的意义是OOP(面向对象编程...

Java搬砖工程师
32分钟前
1
0
【图解AI:动图】各种类型的卷积,你认全了吗?

卷积(convolution)是深度学习中非常有用的计算操作,主要用于提取图像的特征。在近几年来深度学习快速发展的过程中,卷积从标准卷积演变出了反卷积、可分离卷积、分组卷积等各种类型,以适...

雪饼
43分钟前
3
0
壮丽70年·奋斗新时代|蒸妙集团熏蒸设备的特点与功效

熏蒸仪具有显著、强大、持久的生理、药理效应。目前熏蒸仪普遍采用先进的中药汽化装置,通过数字智能化控制恒温或者电脑控温,使中药药液产生中药蒸汽。患者在薰蒸治疗时,能通过蒸汽热敷使全...

公益传承
49分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部