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

简介: Linux Rsync服务详解(一)——Rsync基本命令与使用

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

一、Rsync服务简介
Rsync服务,即Remote Sync服务,远程同步服务,是用来异地或者本地进行传输同步的一种服务。与一般的cp和scp工具相比,Rsync服务优点如下:
1、备份属于增量备份,只传输修改过的文件。
2、在文件传输前和文件传输后,会对传输的文件进行压缩,从而可以减少传输带宽,降低传输时间。
3、可以对整个目录树和文件系统进行备份,可以选择性的备份软硬链接、时间、文件属性等等内容。
Rsync服务采用C/S模式,使用端口号873。Rsync的服务端是指开启Rsync服务,监听873端口的设备。Rsync服务的数据同步方式有两种,push和pull。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
1
不管是使用push还是pull,在配置rsync服务时,服务器和客户端都要安装rsync。
Rsync服务启动命令如下:

rsync --deamon
1
启动成功后,发现本地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
1
2
上述第一条命令的含义是将本地/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
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/121051874

目录
相关文章
|
6月前
|
存储 安全 Linux
Linux卡在emergency mode怎么办?xfs_repair 命令轻松解决
Linux虚拟机遇紧急模式?别慌!多因磁盘挂载失败。本文教你通过日志定位问题,用`xfs_repair`等工具修复文件系统,三步快速恢复。掌握查日志、修磁盘、验重启,轻松应对紧急模式,保障系统稳定运行。
1140 2
|
6月前
|
Linux 网络安全 Docker
盘古栈云,创建带ssh服务的linux容器
创建带ssh服务的linux容器
400 146
|
7月前
|
缓存 监控 Linux
Linux内存问题排查命令详解
Linux服务器卡顿?可能是内存问题。掌握free、vmstat、sar三大命令,快速排查内存使用情况。free查看实时内存,vmstat诊断系统整体性能瓶颈,sar实现长期监控,三者结合,高效定位并解决内存问题。
652 0
Linux内存问题排查命令详解
|
7月前
|
缓存 安全 Linux
六、Linux核心服务与包管理
在没有网络的情况下,使用系统安装光盘是获取RPM包的常用方法。场景二:配置本地文件镜像源 (使用系统安装光盘/ISO)(检查RPM包的GPG签名以保证安全) 或。YUM/DNF包管理工具 (yum/dnf)(此处可以放置您为本主题制作的思维导图)处理依赖问题的危险选项 (应极力避免)(覆盖文件、替换已安装包)。(list) 则是列出文件。(query file) 是。(假设系统安装光盘已挂载到。信息 (verbose)。(upgrade) 选项。(all) 已安装的包。(package) 选项
533 11
|
7月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
795 1
二、Linux文本处理与文件操作核心命令
|
7月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
1243 58
|
7月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
462 137
|
7月前
|
Unix Linux 程序员
Linux文本搜索工具grep命令使用指南
以上就是对Linux环境下强大工具 `grep` 的基础到进阶功能介绍。它不仅能够执行简单文字查询任务还能够处理复杂文字处理任务,并且支持强大而灵活地正则表达规范来增加查询精度与效率。无论您是程序员、数据分析师还是系统管理员,在日常工作中熟练运用该命令都将极大提升您处理和分析数据效率。
574 16
|
Linux
linux中服务管理
在Linux服务管理中,从传统的System V init到Upstart,再到广泛采用的systemd,管理方式不断发展。systemd以其强大的功能和依赖解决成为现代Linux的核心。`systemctl`是管理服务的关键命令,如启动(`start`)、停止(`stop`)、重启(`restart`)服务及设置开机启动(`enable`)或取消(`disable`)。了解和服务管理,特别是systemd和`systemctl`的使用,对系统管理员至关重要。其他如xinetd用于控制网络服务,而特定环境下有OpenRC等工具。
285 2
|
安全 Ubuntu 网络协议
Linux中的服务管理
Linux系统可以同时运行数百个任务。其中大多数都属于操作系统环境的组成部分,不过可能也会有那么一两个你不需要的**守护进程**。有3种可用于启动守护进程和服务的工具,Linux发行版支持其中任意一种。传统的SysV系统使用/etc/init.d中的脚本。较新的systemd守护进程除了使用/etc/init.d之外,还用到了systemctl调用。还有些发行版使用的是upstart,配置脚本保存在/etc/init中。systemd如今已经取代了SysVinit系统。upstart是由Ubuntu开发并采用的,但是在14.04版中,已经改成了systemd。
382 3