博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
rsync 服务基础配置讲解
阅读量:5062 次
发布时间:2019-06-12

本文共 2268 字,大约阅读时间需要 7 分钟。

文章目录

RSYNC 服务基础配置

关于RSYNC

1. 关于RSYNC

  1. 一款 快速增量备份工具
  2. Remote SYnc ,远程同步
  3. 支持本地赋值,或者与其他SSH,rsync主机同步
  4. 官方网站 :
  5. 单向备份 是最好的,

2. 概述

  1. Rsync 是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件,也可以使用Rsync同步本地硬盘的不同目录
  2. Rsync 是用于取代rcp 的一个工机具,Rsync 使用Rsync 算法,来达到童虎,这个算法只传输两个文件的不同部分
  3. 通过校验和的 来实现 文件同步
  4. Rsync 支持大多数系统,win也是(cwRsync ,Sync2Nas)

3. 特点

  1. 能更新整个目录和树和文件系统
  2. 有选择性的保持符号链接、硬链接、文件属于、权限、设备、时间等
  3. 对于安装来说,无任何特殊权限要求
  4. 能用rsh,ssh或直接端口作为传输端口
  5. 支持匿名rsync同步文件,是理想的镜像工具

4. 同步源与发起端

  1. rsync 同步源

    1. 指备份操作的远程服务器,也称备份源

    2. 主要包括 : rsync ,SSh

在这里插入图片描述

  1. 同步的优缺点:

    1. 定期同步不足:
      1. 指定备份的时间固定,延迟明显,实时性差
    2. 实时同步
      1. 同步源发生变化,就会开始同步,

命令

1. 命令格式

在这里插入图片描述

2. 用法

在这里插入图片描述

搭建同步源

1. 基于SSH同步源

  1. 客户机:
下载 :setfac1  设置权限工更加的安全rsync -avz server@IP:/var/www/html/*  /client/ssh上传:rsync -avz /client/ssh  username@IP:/var/www/html/*

1. 基于Rsync 同步源

  1. 要写配置文件

    在这里插入图片描述

    address = iP    #监听网卡port  873		# 端口号pid file = /var/run/rsyncd.pid  #pid文件log file = /var/log/rsyncd.log  # 日志文件[share]		comment = soft  #描述信息		path =  /server/rsync #共享目录		read only = yes  #设定制度		dont compress = *.gz  *.bz2  *.zip#设置哪些文件不进行压缩		auth users = wang #虚拟用户		secrets file = /etc/rsyncd_users.db #用户名密码的文件(像搭建 ftp的虚拟用户)
  2. 写 rsyncd_users.db 文件

    wang:123456
  3. rsync 配置文件 /etc/xinetd.d/rsync

    1. 设置自动启动
  4. 启动

    1. rsync --demon
  5. 客户机连接同步

    1. 有两种书写格式
    2. rsync -avz wang@IP ::share /client/rsync/
    3. 如果这块显示认证失败
    4. 是服务端的密码认证的文件,需要设置为600权限
    5. chmod 600 /etc/rsyncd_users.db
  6. 客户机上传:显示权限不足

    1. 因为虚拟用户是nobody用户,需要通过服务器设置这个实际目录的权限
    2. setfac1 -m u:nobody:rwx /server/rsync/

实现免密码验证

1. ssh-通过密钥对

  1. 生成密钥对
  2. ssh-kcygen -t rsa
  3. ssh-copy-id server@ip #上传服务器

2. 基于Rsync同步源

  1. 变量 ¥RSYNC_PASSWORD
  2. 给这个变量赋值的密码,,,记得升级为全局

inotify(实时工具)

1. 第三方安装make等等

2. 内核参数(/etc/systl.conf )

  1. max_queue_events :监控队列大小
  2. max_user_instances : 最多监控实例数
  3. max_user_watches : 每个实例最多监控文件数
  4. 一般足够用
  5. 每个系统都是不一样的

3. 监控

  1. inotifywait : 用于持续监控,实时输出结果

  2. inotifywatch : 用于短期监控,任务完成后再出结果

在这里插入图片描述

  1. 通过脚本来检测文件变化,实时传输

  2. 例子

    a = "/usr/local/bin/inotifywait -mrq -e create /var/www/html"b = "/usr/bin/rsync -avz /var/www/html/*  客户端IP:/同步目录"$a | while read directory event filedo	$bdone

unsion 支持双向同步

1. inotify+unsion

  1. unsion 需要制定参数

    1. make UISTYLE=text 命令行模式
    2. THREADS=true 多进程模式
    3. STATIC=true 静态模式
  2. unsion 只需要将 unison 复制到/usr/local/bin/ (可以执行的地方)

  3. 脚本(lizi)

    a = "/usr/local/bin/inotifywait -mrq -e create,delete /server1"b = "/usr/local/unison  -batch /server1/  ssh://192/168.1.1//server2"$a | while read directory event filedo 	$bdone

转载于:https://www.cnblogs.com/YJBlog/p/10815082.html

你可能感兴趣的文章
STL容器之vector
查看>>
无法向会话状态服务器发出会话状态请求
查看>>
数据中心虚拟化技术
查看>>
01入门
查看>>
复习文件操作
查看>>
SQL Server 使用作业设置定时任务之一(转载)
查看>>
第二阶段冲刺-01
查看>>
BZOJ1045 HAOI2008 糖果传递
查看>>
发送请求时params和data的区别
查看>>
JavaScript 克隆数组
查看>>
eggs
查看>>
一步步学习微软InfoPath2010和SP2010--第七章节--从SP列表和业务数据连接接收数据(4)--外部项目选取器和业务数据连接...
查看>>
如何增强你的SharePoint 团队网站首页
查看>>
FZU 1914 Funny Positive Sequence(线性算法)
查看>>
oracle 报错ORA-12514: TNS:listener does not currently know of service requested in connec
查看>>
基于grunt构建的前端集成开发环境
查看>>
MySQL服务读取参数文件my.cnf的规律研究探索
查看>>
java string(转)
查看>>
__all__有趣的属性
查看>>
写博客
查看>>