rsync服务守护进程 服务器端配置过程:

1. 检查rsync是否安装:

rpm -qa rsync

2.添加rsync服务的用户,管理本地目录

useradd-s /sbin/nologin -M rsync

3.生成rsyncd.conf 配置文件(默认没有需要手动创建)

touch /etc/rsyncd.conf

4. 写入配置到 /etc/rsyncd.conf 文件中


#rsync_config

#created by HQ at 2017

##rsyncd.conf start##

uid = rsync

gid = rsync

use chroot = no

max connections = 200

timeout = 300

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

log file = /var/log/rsyncd.log

ignore errors

read only = false

list = false

hosts allow = 172.16.1.0/24

hosts deny = 0.0.0.0/32
             ##这两个同时写,那就会造成其他IP段也能通过rsync传文件,解决办法,保留一个

auth users = rsync_backup

secrets file = /etc/rsync.password

[backup]

comment = "backup dir by oldboy"

path = /backup




#created by oldboy 15:00 2016-11-15

##rsyncd.conf start##

uid = rsync

gid = rsync

use chroot = no

max connections = 200

timeout = 300

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

log file = /var/log/rsyncd.log

[backup]

path = /backup

ignore errors

read only = false

list = false

hosts allow = 172.16.1.0/24

hosts deny = 0.0.0.0/32               ##这两个同时写,那就会造成其他IP段也能通过rsync传文件,解决办法,保留一个

auth users = rsync_backup

secrets file = /etc/rsync.password

5.写入密码到 密码配置文件/etc/rsync.password

echo "rsync_backup:123456" >/etc/rsync.password

6. 给密码文件添加权限避免其他用户看到

chmod 600 /etc/rsync.password

7.创建共享目录 /backup并授权

mkdir /bakcup -p

chown -R rsync.rsync /backup

8. 启动服务并检查

rsync --daemon  服务器配置完成

9.添加到开机自启动

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

检查是否成功启动:lsof -i:873

[root@backup ~]# lsof -i:873 (进程启动成功,配置完成)

COMMANDPID USER FD TYPE DEVICE SIZE/OFF NODE NAME

rsync2002 root 4u IPv412746 0t0 TCP *:rsync (LISTEN)

rsync2002 root 5u IPv612747 0t0 TCP *:rsync (LISTEN)

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

客户端配置:

两步:

1. echo '123456' >/etc/rsync.password

2. chmod 600 /etc/rsync.password

测试:

客户端:

[root@nfs01 backup]# rsync -avz /backup/ rsync_backup@172.16.1.41::backup/

Password:

sending incremental file list

./

1.txt

10.txt

2.txt

3.txt

4.txt

5.txt

6.txt

7.txt

8.txt

9.txt

全部推送到 远程服务成功

配置无交互的密码文件验证方式:

rsrsync -avz /backup/sync_backup@172.16.1.41::backup/ --password-file=/etc/rsync.password


密码文件存放: --password-file=/etc/rsync.password


服务器(10.0.0.31)创建文件:

to touch chenleilei{1..100}.txt

        rsync -avz /backup/ rsync_backup@172.16.1.41::backup/ --password-file=/etc/rsync.password

看到文件都被推送过来了,表示成功完成实验


百万级小文件的实时同步方案:

http://www.ttlsa.com/web/let-infotify-rsync-fast/




注意:修改了服务配置必须重启服务,否则无法生效


重启进程的两个方法:

rm -f /var/run/rsyncd.pid
 

pkill  rsync


进程结束了 最好确认一下:

lsof -i :873


同样进程开启了也需要确认一下

lsof -i :873



小问题:

vi /etc/rsyncd.conf   配置文件中: 


#hosts allow = 172.16.1.0/24

#hosts deny = 0.0.0.0/32

#hosts allow = 192.168.1.0/24


全部注释都无法传输 


hosts allow = 192.168.1.0/24
  开放这一项 无法传输

hosts deny = 0.0.0.0/32
 #仅开放这一项 可以传输


hosts allow = 172.16.1.0/24
#仅开放这一项 无法传输 

全部注释  可以传输???


rsync -avz /backup/ rsync_backup@172.16.1.41::backup/ --password-file=/etc/rsync.password
 可以在没有任何权限的情况下 推送文件到 服务器


hosts deny = 0.0.0.0/32
  可以传输

hosts allow = 172.16.1.0/24
可以传输


hosts allow = 192.168.1.0/24  单项开启  无法传输  

hosts deny = 0.0.0.0/32       单项开启:  可以传输 

hosts allow = 172.16.1.0/24        单项开启:可以传输


hosts deny = 0.0.0.0/32
    开启  

hosts allow = 192.168.1.0/24  开启     这两项同时开启,可以传输


hosts allow = 172.16.1.0/24
    开启

hosts allow = 192.168.1.0/24
 开启 这两项  无法传输


注释其他所有添加外网网段

hosts alllow = 10.0.0.0/24
  开启 可以传输




故障整理演示:

故障1:

@ERROR: chdir failed

rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]


答:  要上传的目录不存在吗,因为我在另一端删除了 /backup 目录 ,解决办法 重新创建backup目录 重新添加所属主组 和数字权限600

[root@backup ~]# mkdir /backup -p

[root@backup ~]# chmod 600 /backup/

[root@backup ~]# chown rsync.rsync /backup/




推送数据:

rsync -avz /backup/ rsync_backup@172.16.1.41::backup/


拉回数据:

rsync -avz rsync_backup@172.16.1.41::backup/ /backup


远程推送数据:

sync -avz /backup/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password


拉回远程数据:

rsync -avz rsync_backup@172.16.1.41::backup /backup --password-file=/etc/rsync.password






rsync 备份服务搭建(完成)的更多相关文章

  1. day27 综合架构 rsync备份服务

    sync软件使用方法: rsync命令 1v4 a 本地备份数据 cp [root@nfs01 backup]# cp /etc/hosts /tmp [root@nfs01 backup]# ll ...

  2. 3、Rsync备份服务实战

    1.Rsync基本概述 rsync是一款开源的备份工具,可以在不同主机之间进行同步,可实现全量备份与增量备份,因此非常适合用于架构集中式备份或异地备份等应用. rsync官方地址:传送门http:// ...

  3. Rsync备份服务实战

    目录 Rsync备份服务实战 一.Rsync 二.rsync的应用场景 1.Rync的数据同步模式 2.rsync的三种模式 三.rsync配置服务端客户端 四.rsync实战 实战一 报错解决方法: ...

  4. Rsync备份服务部署

    1 Rsync服务器架构规划 在搭建服务之前需要做以下规划设计,其中包括:主机规划表.主机IP地址规划表.主机架构图.主机hosts解析以及linux主机基础优化等 1.1 主机规划表 服务器说明 数 ...

  5. 二.Rsync备份服务

    自己动手部署一遍 期中架构-第二章-备份服务笔记====================================================================== 01. 课 ...

  6. rsync实时备份备份服务搭建和使用指南

    一.Rsync企业工作场景说明: 1.利用定时任务+rsync方式实现数据同步 对于网站内部技术人员创建的数据,可以采取定时任务的方式 2.利用实时任务+rsync方式实现数据同步 对于网站外部访问用 ...

  7. Rsync备份服务

    一.Rsync 原理图 二.Rsync 原理描述 2.1:什么是Rsync Rsync是备份的一款软件,它可以实现全量备份.增量备份,也可以在不改变内容.属性的情况下进行同步备份,端口默认是873 2 ...

  8. Linux Rsync备份服务介绍及部署守护进程模式

    rsync介绍 rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份工具 在常驻模式(daemon mode)下,rsync默认监听TCP端口873,以原生rsync传输 ...

  9. Linux中rsync备份服务部署

    rsync介绍 rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份工具 在常驻模式(daemon mode)下,rsync默认监听TCP端口873,以原生rsync传输 ...

随机推荐

  1. Unity3D Demo

    之前在Unity讨论Q群里总是有不少同学求项目资源和源码神马的,其实这种资源在官网很多,而且都比较规范和专业,很有参考价值,链接:https://www.assetstore.unity3d.com/ ...

  2. Python时间日期函数讲解

    所有日期.时间的api都在datetime模块内. 1. 日期输出格式化 datetime => string import datetime now = datetime.datetime.n ...

  3. leetcode524

    public class Solution { public string FindLongestWord(string s, IList<string> d) { string long ...

  4. Shadow DOM的事件绑定

    好悲催,阴世界的事件对象跑到光世界时,它的属性都被重写了,要自己做备份. <div id="root">Hello, world!</div> <sc ...

  5. Objective-C 基础语法log打印那些事儿(一)

    Objective-C 基础语法详解 雨松MOMO原创文章如转载,请注明:转载至我的独立域名博客雨松MOMO程序研究院,原文地址:http://www.xuanyusong.com/archives/ ...

  6. 搭建J2EE开发平台-Eclipse+MySql+tomcat

    搭建J2EE开发平台-Eclipse+MySql+tomcat 分类: ·Java 2010-10-10 15:45 2596人阅读 评论(3) 收藏 举报 mysql平台eclipsetomcatj ...

  7. Perl 变量:标量变量、数组变量、哈希变量和变量上下文

    一.Perl 变量变量是存储在内存中的数据,创建一个变量即会在内存上开辟一个空间.解释器会根据变量的类型来决定其在内存中的存储空间,因此你可以为变量分配不同的数据类型,如整型.浮点型.字符串等.上一章 ...

  8. rdlc设置指定列隐藏

    此用户帐户对提案名称列不可见

  9. 简单的互斥同步方式——synchronized关键字详解

    目录 1. 关于synchronized关键字 2. synchronized的原理和实现细节 2.1 synchronized可以用在那些地方 2.2 synchronized是如何实现线程互斥访问 ...

  10. 第01章 开发准备(对最新版的RN进行了升级)1-3+项目结构介绍