配置文件 rsyncd.conf
两种 rsync 服务运行方式都需要配置 rsyncd.conf,其格式类似于 samba 的主配置文件。
配置文件 rsyncd.conf 默认在 /etc 目录下。为了将所有与 rsync 服务相关的文件放在单独的目录下,可以执行如下命令:
# mkdir /etc/rsyncd
# touch /etc/rsyncd/rsyncd.conf
# ln -s /etc/rsyncd/rsyncd.conf /etc/rsyncd.conf
配置文件 rsyncd.conf 由全局配置和若干模块配置组成。配置文件的语法为:
-
模块以 [模块名] 开始
-
参数配置行的格式是 name = value ,其中 value 可以有两种数据类型:
-
字符串(可以不用引号定界字符串)
-
布尔值(1/0 或 yes/no 或 true/false)
-
以 # 或 ; 开始的行为注释
-
\ 为续行符
全局参数
在文件中 [module] 之外的所有配置行都是全局参数。当然也可以在全局参数部分定义模块参数,这时该参数的值就是所有模块的默认值。
参数
说明
默认值
address |
在独立运行时,用于指定的服务器运行的 IP 地址。由 xinetd 运行时将忽略此参数,使用命令行上的 –address 选项替代。 |
本地所有IP |
port |
指定 rsync 守护进程监听的端口号。 由 xinetd 运行时将忽略此参数,使用命令行上的–port 选项替代。 |
873 |
motd file |
指定一个消息文件,当客户连接服务器时该文件的内容显示给客户。 |
无 |
pid file |
rsync 的守护进程将其 PID 写入指定的文件。 |
无 |
log file |
指定 rsync 守护进程的日志文件,而不将日志发送给 syslog。 |
无 |
syslog facility |
指定 rsync 发送日志消息给 syslog 时的消息级别。 |
daemon |
socket options |
指定自定义 TCP 选项。 |
无 |
模块参数
模块参数主要用于定义 rsync 服务器哪个目录要被同步。模块声明的格式必须为 [module] 形式,这个名字就是在 rsync 客户端看到的名字,类似于 Samba 服务器提供的共享名。而服务器真正同步的数据是通过path 来指定的。可以根据自己的需要,来指定多个模块,模块中可以定义以下参数:
1、基本模块参数
参数
说明
默认值
path |
指定当前模块在 rsync 服务器上的同步路径,该参数是必须指定的。 |
无 |
comment |
给模块指定一个描述,该描述连同模块名在客户连接得到模块列表时显示给客户。 |
无 |
2、模块控制参数
参数
说明
默认值
use chroot |
若为 true,则 rsync 在传输文件之前首先 chroot 到 path 参数所指定的目录下。这样做的原因是实现额外的安全防护,但是缺点是需要 root 权限,并且不能备份指向 path 外部的符号连接所指向的目录文件。 |
true |
uid |
指定该模块以指定的 UID 传输文件。 |
nobody |
gid |
指定该模块以指定的 GID 传输文件。 |
nobody |
max connections |
指定该模块的最大并发连接数量以保护服务器,超过限制的连接请求将被告知随后再试。 |
0(没有限制) |
lock file |
指定支持 max connections 参数的锁文件。 |
/var/run/rsyncd.lock |
list |
指定当客户请求列出可以使用的模块列表时,该模块是否应该被列出。如果设置该选项为 false,可以创建隐藏的模块。 |
true |
read only |
指定是否允许客户上传文件。若为 true 则不允许上传;若为 false 并且服务器目录也具有读写权限则允许上传。 |
true |
write only |
指定是否允许客户下载文件。若为 true 则不允许下载;若为 false 并且服务器目录也具有读权限则允许下载。 |
false |
ignore errors |
指定 在 rsync 服务器上运行 delete 操作时是否忽略 I/O 错误。一般来说 rsync 在出现 I/O 错误时将将跳过 –delete 操作,以防止因为暂时的资源不足或其它 I/O 错误导致的严重问题。 |
true |
ignore nonreadable |
指定 rysnc 服务器完全忽略那些用户没有访问权限的文件。这对于在需要备份的目录中有些不应该被备份者获得的文件时是有意义的。 |
false |
timeout |
该选项可以覆盖客户指定的 IP 超时时间。从而确保 rsync 服务器不会永远等待一个崩溃的客户端。对于匿名 rsync 服务器来说,理想的数字是 600(单位为秒)。 |
0 (未限制) |
dont compress |
用来指定那些在传输之前不进行压缩处理的文件。该选项可以定义一些不允许客户对该模块使用的命令选项列表。必须使用选项全名,而不能是简称。当发生拒绝某个选项的情况时,服务器将报告错误信息然后退出。例如,要防止使用压缩,应该是:”dont compress = *”。 |
*.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz |
3、模块文件筛选参数
参数
说明
默认值
exclude |
指定多个由空格隔开的多个文件或目录(相对路径),并将其添加到 exclude 列表中。这等同于在客户端命令中使用 –exclude 来指定模式。 |
空 |
exclude from |
指定一个包含 exclude 规则定义的文件名,服务器从该文件中读取 exclude 列表定义。 |
空 |
include |
指定多个由空格隔开的多个文件或目录(相对路径),并将其添加到 include 列表中。这等同于在客户端命令中使用 –include 来指定模式 。 |
空 |
include from |
指定一个包含 include 规则定义的文件名,服务器从该文件中读取 include 列表定义。 |
空 |
-
一个模块只能指定一个 exclude 参数、一个 include 参数。
-
结合 include 和 exclude 可以定义复杂的 exclude/include 规则 。
-
这几个参数分别与相应的 rsync 客户命令选项等价,唯一不同的是它们作用在服务器端。
-
关于如何书写规则文件的内容请参见上节。
4、模块用户认证参数
参数
说明
默认值
auth users |
指定由空格或逗号分隔的用户名列表,只有这些用户才允许连接该模块。这里的用户和系统用户没有任何关系。用户名和口令以明文方式存放在 secrets file 参数指定的文件中。 |
(匿名方式) |
secrets file |
指定一个 rsync 认证口令文件。只有在 auth users 被定义时,该文件才起作用。 |
空 |
strict modes |
指定是否监测口令文件的权限。若为 true 则口令文件只能被 rsync 服务器运行身份的用户访问,其他任何用户不可以访问该文件。 |
true |
-
rsync 认证口令文件的权限一定是 600,否则客户端将不能连接服务器。
-
rsync 认证口令文件中每一行指定一个 用户名:口令 对,格式为:
# 以 "#" 开始的行为注释行
username:passwd
# 一般来说口令最好不要超过8个字符。
若您只配置匿名访问的 rsync 服务器,则无需设置上述参数。 5、模块访问控制参数
参数
说明
默认值
hosts allow |
用一个主机列表指定哪些主机客户允许连接该模块。不匹配主机列表的主机将被拒绝。 |
* |
hosts deny |
用一个主机列表指定哪些主机客户不允许连接该模块。 |
空 |
客户主机列表定义可以是以下形式:
-
单个IP地址。例如:192.168.0.1
-
整个网段。例如:192.168.0.0/24,192.168.0.0/255.255.255.0
-
可解析的单个主机名。例如:centos,centos.smartraining.cn
-
域内的所有主机。例如:*.smartraining.cn
-
“*”则表示所有。
-
多个列表项要用空格间隔。
6、模块日志参数
参数
说明
默认值
transfer logging |
使 rsync 服务器将传输操作记录到传输日志文件。 |
false |
log format |
指定传输日志文件的字段。 |
”%o %h [%a] %m (%u) %f %l” |
* 设置了”log file”参数时,在日志每行的开始会添加”%t [%p]“。
-
可以使用的日志格式定义符如下所示:
-
%a - 远程IP地址
-
%h - 远程主机名
-
%l - 文件长度字符数
-
%p - 该次 rsync 会话的 PID
-
%o - 操作类型:”send” 或 “recv”
-
%f - 文件名
-
%P - 模块路径
-
%m - 模块名
-
%t - 当前时间
-
%u - 认证的用户名(匿名时是 null)
-
%b - 实际传输的字节数
-
%c - 当发送文件时,记录该文件的校验码
分享到:
相关推荐
linuxrsync安装配置及命令详解.pdf
Rsync详解及liunx和windows下的配置
Rsync的配置与使用重点详解,比较全面的介绍了rsync同步备份的方法及配置重点。
rsync安装配置详解
一、什么是rsync rsync,remote synchronize顾名思意就知道它是一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。 rsync是用 “rsync 算法”提供了一个客户...
本人根据自己目录同步实际操作写的详细配置过程,希望可以对大家有帮助
Rsync命令详解 在对rsync服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来。rsync是一个功能非常强大的工具,其命令也有很多功能特色选项。 一、rsync的六种工作模式: ...
1)完成rsync守护进程模式搭建 2)rsync备份传输数据原理 3)rsync命令的常用参数 4)企业应用rsync技巧 5)企业项目:全网备份项目(脚本) 01.课程知识回顾 1)综合架构的组成部分 前端:防火墙,负载均衡、web...
主要介绍了linux rsync安装 配置 实例详解,需要的朋友可以参考下
rsync -avpz -e ssh 192.... 您可能感兴趣的文章:rsync命令排除文件和文件夹(exclude-from)RSync实现文件同步备份配置详解Rsync命令参数详解rsync 安装使用详解rsync 常见错误与解决方法整理rsync详解之exclude排除文件
在对rsync服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来。rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面就对它的选项一一进行分析说明。 ...
安装配置rsync和sersync,附带配置文件,以及使用方法。
1、在后端的两个wordpress上配置rsync+inotify,两服务器都开启rsync服务,并且通过inotify分别向对方同步数据 下面配置192.168.6.205这台服务器 vim /etc/rsyncd.conf uid = nginx gid = nginx port = 873 host all...
对于运维人员来说,数据备份是最重要的工作之一,rsync就是一款通过网络备份重要数据的工具/软件。
当前版本的sersync依赖于rsync进行同步。如下图所示,在同步主服务器上开启sersync,将监控路径中的文件同步到目标服务器,因此需要在主服务器配置sersync,在同步目标服务器配置rsync