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. 【LeetCode题解】20_有效的括号(Valid-Parentheses)

    目录 20_有效的括号(Valid-Parentheses) 描述 解法 思路 Java 实现 Python 实现 复杂度分析 20_有效的括号(Valid-Parentheses) 描述 给定一个只 ...

  2. Redis---1、介绍

    Redis简介: 是以key-value形式存储,和传统的关系型数据库不一样,不一定遵循传统数据库的一些基本要求. 优点: 对数据高并发读写 对海量数据的高效率存储和访问 对数据的可扩展性和高可用行 ...

  3. MySQL (一)(未完成)

    并发控制 读写锁 读锁: 共享锁 写锁: 排它锁 颗粒度 表锁,MySQL中开销最小的锁 行锁,MySQL中开销最大的锁 事务 ACID特性 原子性(Automatic) 隔离性(Isolation) ...

  4. 关于设置服务器为https服务器

    主要是设置IIS: step1:打开Internet 信息服务(IIS)管理器——选择网站,编辑绑定   step2:添加https,如下图,这样如果不设置SSL的话就两种都可以进去网站 如果想要设置 ...

  5. C# 文件上传 制作水印

    其实C#的文件上传是非常简单的 前台代码 <asp:FileUpload ID="FileUpload1" accept=".jpg,.png,.jpeg" ...

  6. java map常用的4种遍历方法

    public static void main(String[] args) { Map<String, String> map = new HashMap<String, Stri ...

  7. JDK的安装与卸载

      1.jdk 下载链接:http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html 2.在 ...

  8. springcloud 实战 网关zuul使用中遇到的相关问题

    springcloud 实战  网关zuul使用中遇到的相关问题 1.网关zuul使用时,跨域问题在网关中配置pre过滤器: response.setHeader("Access-Contr ...

  9. LeetCode算法题5----Longest Palindromic Substring

    #5. Longest Palindromic Substring Given a string S, find the longest palindromic substring in S. You ...

  10. 横向开关(switch)

    横向开关(switch) 一:属性 1.Activity //横向开关 public class SwitchActivity extends Activity { private Switch sw ...