今天继续给大家介绍Linux运维相关内容,本文主要内容是Rsync服务详解。

一、Rsync服务简介

Rsync服务,即Remote Sync服务,远程同步服务,是用来异地或者本地进行传输同步的一种服务。与一般的cp和scp工具相比,Rsync服务优点如下:
1、备份属于增量备份,只传输修改过的文件。
2、在文件传输前和文件传输后,会对传输的文件进行压缩,从而可以减少传输带宽,降低传输时间。
3、可以对整个目录树和文件系统进行备份,可以选择性的备份软硬链接、时间、文件属性等等内容。
Rsync服务采用C/S模式,使用端口号873。Rsync的服务端是指开启Rsync服务,监听873端口的设备。Rsync服务的数据同步方式有两种,pushpull。push,即推的方式,Rsync客户端主动把要备份的数据推送给Rsync服务器,此时重要数据存储在客户端中,客户端把这些数据发送给服务器进行保存。pull,即拉的方式,Rsync客户端主动寻找Rsync服务器获取备份数据。此时重要数据存储在服务器中,客户端通过拉取的动作实现重要数据本地备份。
在使用push时,如果要设备数量过多,会导致延迟很高,因此一般应用于20台备份设备以下的场景。在公司内网中,如果服务器数量较多,则可以采取多级配置的方式配置Rsync服务,场景如下所示:

Xinetd服务会统一管理包括Rsync、tftp、DHCP等在内的小服务。在使用Rsync同步的时候,先是通过xinetd监听873端口,如果收到Rysnc信息,就会转交Rysnc服务,之后Rysnc服务会做出回应。

二、Rsync安装与启动

因为Rsync是基于xinetd服务来管理,因此在安装Rsync服务时,要同时安装xinetd服务,yum安装命令如下:

yum install -y rsync xinetd

不管是使用push还是pull,在配置rsync服务时,服务器和客户端都要安装rsync。
Rsync服务启动命令如下:

rsync --deamon

启动成功后,发现本地873端口打开:

三、Rsync使用命令

Rsync常用命令如下:
-z 表示压缩,即在文件传输前和传输后要进行压缩
-v 表示显示详细信息
-r 表示在文件传输时对子文件夹中的内容要进行递归处理
-p 表示在备份时要保留文件原有属性
-t 表示在备份时要保留文件原有时间
-g 表示在备份是要保留文件原有属组
-o 表示在备份时要保留文件属主
-l 表示在备份时要备份所有的软链接
-D 表示在备份时要保留device信息
-a 相当于-rptgoiD的组合,即在传输文件时丝毫不变,原样备份。
–port 指定rsync服务的端口号
–delete 表示删除目标位置有的但是源位置没有的文件(注:此参数易造成文件丢失,因此需要谨慎使用)
使用rsync工具进行备份命令示例如下:

rsync -azv /back-source rsync@192.168.136.210:/back-target
rsync -azv rsync@192.168.136.210:/back-source /back-target

上述第一条命令的含义是将本地/back-source文件夹的内容,备份到192.168.136.210主机上,使用rsync账户登录,备份位置是/back-target文件夹。
第二条命令的含义是将192.168.136.210的/back-source文件夹下的内容备份到本地/back-target文件夹下,在执行这一条命令时,一定要注意,back-source后面如下有斜杠,即为/back-source/则表示备份的是该文件夹下的所有文件,而如果没有斜杠,则表示备份的是该文件夹,两者区别如下所示:


上述两条命令的执行,属于手动rsync备份,需要源和目的设备都安装了rsync服务,但是不需要将其用rsync --daemon后台运行。这种备份没有服务器和客户端的明显分类,但是有明显的拉取和推送的区别。注意到上述两条命令中的rsync,即在远程机器上(非运行rsync的设备上)必须真正的存在一个名为rsync的用户,并且在备份时需要输入该用户的密码。此外,上述操作还设计到文件权限的问题。对于远程设备而言,备份的/source-target或者/source-source的属主需要是rsync用户,或者通过设置acl的方式来放行rsync用户的权限。

三、Rsync相关配置文件

Rsync配置文件为/etc/rsync.conf下,文件内包含全局参数和模块参数两部分。全局参数对rsync服务器生效,但是如果与模块参数配置不同,则模块配置优先级高于全局参数,模块参数会定义需要通过rsync输出的目录定义的参数。
常见的全局参数如下:
port:指定后台程序使用的端口号
uid、gid:指定传输文件进程的权限
max connections:指定Rsync模块的最大链接数量
pid file、lock file、log file:指定Rsync服务所使用的进程文件、所文件和日志文件
常见的局部参数如下:
path:指定同步的目录
comment:对该模块的描述,没有实际作用
read only:指定是否为只读(下载)模式,如果该参数配置为true,则该模块指定的目录只允许下载(作为备份源),如果该参数配置为false,则该模块指定的目录即可以下载(作为备份源),也可以上传(作为备份服务器)。
list:指定是否可以查看模块信息
auth users:指定Rsync认证使用的用户名(在使用配置文件和模块启动Rsync服务时,不需要系统真正存在该用户)
secrets file:指定Rsync认证使用的密码的存放文件。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

Linux Rsync服务详解(一)——Rsync基本命令与使用相关推荐

  1. Linux DNS服务详解——DNS服务搭建细节

    前几天,我陆续给大家介绍了DNS服务的相关内容,今天,我给大家补充介绍一下DNS服务中一些小问题. 前文链接: Linux DNS服务详解--DNS基础知识 Linux DNS服务详解--DNS实战配 ...

  2. linux网络服务详解,Linux网络服务器配置基础详解 (3)

    Linux网络服务器配置基础详解 (3) Linux网络服务器配置基础详解 (3) 第三步:编辑"inetd.conf"文件(vi /etc/inetd.conf),禁止所有不需要 ...

  3. Linux vsFTPd服务详解——vsFTPd基础知识

    今天继续给大家介绍Linux运维相关内容,本文主要内容是Linux的vsFTPd服务. 一.vsFTPd服务简介与安装 FTP服务,即File Transfer Protocol.文件传输服务,用于在 ...

  4. Linux启动服务详解

    acpid 提供高级电源管理:配置文件:/proc/acpi/event 预设端口:无 说明:Advanced Configuration and Power Interface,为替代传统的APM电 ...

  5. Linux DNS服务详解——DNS实战配置

    今天继续给大家介绍Linux基础知识,本文主要内容是DNS的实战配置. 一.DNS安装与配置文件 如果采用YUM的安装方式,DNS设计到三个包,相关命令如下: yum install -y bind ...

  6. Linux NTP服务详解

    今天继续给大家介绍Linux运维相关内容,本文主要内容是NTP服务. 一.NTP服务简介 NTP服务,即用来同步系统时间的服务,虽然服务器内部会通过晶振自动计算时间,但是在系统长时间运行下,服务器内部 ...

  7. Linux Apache服务详解——虚拟网站主机功能实战

    今天我们继续给大家介绍Linux相关内容,本文主要内容是Apache服务虚拟网站主机功能实战. 一.虚拟主机功能简介 Apache服务默认支持虚拟主机功能,所谓虚拟主机,就是Apache将一台服务器的 ...

  8. linux下rsync命令,Linux 命令之rsync命令详解

    rsync命令 rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.rsync使用所谓的"rsync算法"来使本地和远程两个主机之间的文件达到同步, ...

  9. Linux服务详解(主要基于RedHat系的及Centos默认服务详解)(综合整理)

    转自:http://blog.csdn.net/jj198981/article/details/7605558 acpid ACPI(全称 Advanced Configuration and Po ...

  10. linux开机启动服务详解

    http://blog.163.com/sjt_linux/blog/static/19931031920126295452884/ linux开机启动服务详解(转) 2012-07-29 17:45 ...

最新文章

  1. 听说我们的元宵节,跟别人的不一样...
  2. cannot import name ‘izip‘ from ‘itertools‘
  3. antd 函数组件_React - 组件:函数组件
  4. 2019-10-06 线性系统的理解
  5. Lua === Lua 十分钟基础入门上手
  6. Linux内核 eBPF基础:kprobe原理源码分析:源码分析
  7. 第一类边界条件,三角单元剖分,线性插值的位场延拓,LDLT高效求解
  8. Coolite之数据源(store)分页,基于Sql2000存储过程(高效分页)
  9. random随机数类
  10. ADB常用命令及其用法大全
  11. 【梦幻童年win7热门主题】
  12. boost升压电路 开环 PI 单闭环 双闭环 数学模型 PWM matlab仿真
  13. 谷歌离开中国的三大原因四大后果
  14. MATLAB风玫瑰图WindRose绘制记录(已知风的u、v分量如何计算风向。)
  15. 无法创建视频捕捉过滤器怎么办
  16. 在centos中安装qq音乐
  17. 为什么没有工作经验的程序员很难找工作?
  18. 希尔顿集团大中华区第450家酒店开业;Gap在山东青岛开新店 | 美通企业日报
  19. Matlab中filter.m和filtfilt.m函数C语言实现
  20. java设计模式之模板

热门文章

  1. 李宏毅机器学习——无监督学习(五)
  2. 《MySQL技术内幕(SQL编程)》——数据类型
  3. 书单|互联网企业面试案头书之程序员技术篇
  4. 星巴克——最单纯的SNS应用
  5. Github-emoji表情图像大全
  6. 海量数据挖掘MMDS week2: 局部敏感哈希Locality-Sensitive Hashing, LSH
  7. plt.imshow显示CT/MRI图像
  8. 力扣-205 同构字符串
  9. 查看Django版本号
  10. Ubuntu安装vbox(virtualbox)