rsync的原理和相关算法不赘述,资料很多

1、准备两台机器并确保都已经安装rsync

a机器:192.168.1.150 ,用作客户端测试 b机器:192.168.1.151用作server端

先介绍个命令,lsof -i :873 检查rsyn服务是否启动,rsync作为守护进程运行时会默认监听873端口

为了试验顺利关闭iptables 和selinux

2、在b机以守护进程方式启动作为server端

有两种方式启动服务,一个是直接rsync --daemon,一个是通过xinetd 启动,如果要通过xinetd启动的话,需要先修改配置文件/etc/xinetd.d/rsync

如下所示:

service rsync
{
disable = no #这里原来是yes 改为no,只需修改这一行即可
flags = IPv6
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = --daemon
log_on_failure += USERID
}

2、创建/etc/rsyncd.conf文件,系统默认没有这个文件,此文件是rsync作为服务端使用的主要配置文件

内容如下:

uid = nobody
gid = nobody

use chroot = yes #这里使用yes或者no都能正确运行,具体差别可去官网查阅或者google
max connections = 4
pid file = /var/run/rsyncd.pid #自行指定
lock file = /var/run/rsync.lock #自行指定
log file = /var/log/rsyncd.log  # 自行指定,这三个文件路径和名字可以随便定

[backup]
path = /data/backup/ #server端用来接收数据的实际路径,注意连接时使用的是上面中括号中的名字backup
read only = true #这里可以也可以改为false 最好是true,更安全
list = false
hosts allow = 192.168.1.0/24 #允许连接的ip范围
auth users = test #允许连接的用户名
secrets file = /etc/rsyncd.password #验证用的用户名和密码,格式为test:test, 路径和名字可以自定义

然后写入用户名密码 echo "test:test" >/etc/rsyncd.password 并设定权限 chmod 600 /etc/rsyncd.password

修改hosts文件,vi /etc/hosts,增加一条192.168.1.150 host01.argb.com,我测试时如果没有这个设置会报一下错误:

name lookup failed for 192.168.1.150: Name or service not known
connect from UNKNOWN (192.168.1.150)

应该是因为内网没有dns服务器的原因。

至此服务器端设置基本完成,启动rsync服务: rsync --daemon

注意:我看有些配置示例上有 ignore errors 这条,但是我实际验证时日志显示这句配置不合法:

params.c:Parameter() - Ignoring badly formed line in configuration file: ignore errors

不知是不是版本问题。

3、进行client端设置

客户端设置很简单,只要配置一个密码文件即可,echo "test">/etc/rsyncd.password

修改文件权限 chmod 600 /etc/rsyncd.password

配置完成

ok,连接测试

rsync -vzrtopg --progress /home/data/test test@192.168.1.151::backup --password-file=/etc/rsyncd.password

done!

rsync可以跟 inotify实现数据的实时备份。

rsync 服务器配置过程的更多相关文章

  1. Rsync同步过程中遇到的常见问题

    一.Rsync服务介绍 Rsync属于一款实现全量及增量同步数据的软件工具,适用于unix/linux/windows等多种操作系统平台. Rsync软件能实现本地复制,远程复制,或者远程守护进程方式 ...

  2. CentOS6 下rsync服务器配置

    一.rsync 简介 Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件,也可以使用 Rsync 同步本地硬盘中的不同目录. Rsy ...

  3. samba服务器配置过程

    SAMBA服务器配置 yum install samba samba-client samba-swat 改变文件权限及用户 vi /etc/samba/smb.conf d+G全删注释 复制下面代码 ...

  4. (mac)阿里云ECS服务器配置过程

    -----首先本人是半只脚入门的iOS开发者,弄这个只是单纯想多学点东西. -----阿里云服务器的配置选择:既然是学习用的,最最基础的配置就行了.1M带宽,1核1G...这就不详述了.没啥可选的,( ...

  5. Rsync详解

    Rsync详解 1.什么是RsyncRsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.Rsync使用所谓的“Rsync算法”来使本 ...

  6. rsync unison+inotify双向实时同步

    rsync多线程同步 A:文件服务器 ip:10.10.1.10 B:备份服务器 ip:10.10.1.11 1.在B服务器上安装rsync软件 tar xzvf rsync-3.1.0.tar.gz ...

  7. rsync实现数据同步

    希望两台机器指定目录的数据保持一致 192.168.19.252(master)                 192.168.19.251(slave) /cache 拉复制            ...

  8. rsync使用详解

    1.什么是Rsync Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.Rsync使用所谓的“Rsync算法”来使本地和远 程两个 ...

  9. [Linux]Linux下rsync服务器和客户端配置

    一.rsync简介 Rsync(remote sync)是UNIX及类UNIX平台下一款神奇的数据镜像备份软件,它不像FTP或其他文件传输服务那样需要进行全备份,Rsync可以根据数据的变化进行差异( ...

随机推荐

  1. Java Stream File & IO

    摘录自:http://www.runoob.com/java/java-files-io.html Java 流(Stream).文件(File)和IO Java.io包几乎包含了所有操作输入.输出需 ...

  2. Sumblime Text 2/3 插件安装方法

    使用Package Control组件安装 按Ctrl+`调出console(注:安装有QQ输入法的这个快捷键会有冲突的,输入法属性设置-输入法管理-取消热键切换至QQ拼音): 如果是sublime ...

  3. linux shell学习-1

    今天在使用$()这个命令的时候,如下,一直纳闷为何输出不是 "/usr": 一直在不断换着法子来试,原来是$()会将每个执行的命令单独隔开来的,及时是嵌套的命令,也会在执行逻辑上单 ...

  4. SQL Server中用While循环替代游标(Cursor)的解决方案

    By行处理数据,推荐2种方式: 1.游标 2.While循环 我们来了解下这两种方案处理1w行数据分别需要多长时间. 一.游标. 首先我们填充一个表,用优雅的递归方式填充. ,) ) ;with ct ...

  5. SQL Server使用ROW_NUMBER进行快速分页查询

    DECLARE @pageSize INTDECLARE @pageIndex INT --第4页,每页显示10条数据SET @pageSize = 10SET @pageIndex = 4 SELE ...

  6. OpenGL开发入门

    1.OpenGL简介: OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL三维图形 API 的子集,针对手机.PDA和游戏主机等嵌入式设备而设计.该API ...

  7. 五:SpringCloud-Zuul

    九:zuul路由网关 1.概述 1.1 是什么 Zuul包含了对请求的路由和过滤两个最主要的功能: 其中==路由功能==负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础. 而==过 ...

  8. spring mybatis 关于 basepackage 和 mapperLocations 的通配符匹配实例

    SqlSessionFactoryBean mapperLocations 注意下面几点 classpath* mapperLocation 起始路径不能有 * ,如 dm* 就不行 ** list ...

  9. 使用admin lte 碰到访问Google字体的问题

    下载了admin lte 的模板,运行的时候,发现很慢,看了一下console,发现adminlte.css里有import google的字体文件,众所周知的原因,无法访问,所以网页很慢,没办法,只 ...

  10. 【C++并发实战】(一)并发基本概念

    什么是并发 并发,最简单的理解就是,两个或者以上的活动同时进行.举个比较实际的例子,你可以手脚并用,两只手做不同的动作等等. 在计算机中的“并发”,是指一个系统可以同时执行多个独立的活动.在以前大多数 ...